【原創】LINQ to SQL學習筆記(一)——Where


  從年前一直在做一個項目,所有沒有時間來看書學習,最近終於有點空閑時間了,就想認真學習下在項目中用到的Linq to SQL。在做項目的過程中覺得Linq很是神奇,語法簡單、直觀,對於我這個SQL語句不是特別精通的菜鳥來說幫助甚大,所以就抽時間來好好學習學習Linq的精妙。

  今天學習的內容是Where的使用,主要是通過例子來展示。

  Linq中的Where與SQL命令中的Where很類似,都是起到了過濾的作用,Where后面緊接判定條件子句。

  Where操作包括三種形式,分別為簡單形式、關系條件形式、First()形式。

一、簡單形式

   我將簡單形式理解為單一條件的Where語句,即在條件子句中只是通過>、<、=、≠作為條件來過濾數據。

  例如:使用Where篩選年齡大於20歲的學生

var query = from student in db.Students
                   where student.Age > 20
                   select student;
  或者:
var query = db.Students.Where(student=>student.Age > 20);

  又或者篩選來自北京的學生

var query = from student in db.Students
                    where student.City=="北京"
                    select student;
或者:
var query = db.Students.Where(student=>student.City=="北京");

二、關系條件形式

   關系條件形式與簡單形式的不同在於,它的條件子句中包含多個條件的並或交,即在簡單形式的基礎上加上&&、||。

  例如:篩選來自北京且年齡大於20歲的學生

var query = from student in db.Students
                   where student.Age > 20 && student.City=="北京"
                   select student;
  或者:
var query = db.Students.Where(student=>student.Age > 20 && student.City=="北京");

  再如,篩選來自壯族或滿族的學生

var query = from student in db.Students
                    where student.Nationality == "壯族" || student.Nationality == "滿族"
                    select student;
或者:
var query = db.Students.Where(student=>student.Nationality == "壯族" 
                      || student.Nationality == "滿族");

  大家可以很容易的區分簡單形式和關系條件形式的不同。

三、First()形式

   First形式與前面兩種不同,它類似於在SQL命令中的Top(1)限定,即我們只返回集合中的第一個元素。

  例如:選擇學生名單中的第一個學生

Student student = db.Students.First();

  再如:選擇學號為1101021的學生

Student student = db.Students.First(student=>student.StuNo=="1101021");

  使用First形式,可以用唯一值來作篩選條件以便確定出唯一需要的數據。

 

總結:

      在使用Linq to SQL的過程中簡化了以前使用SQL的繁瑣書寫,使語句更加的簡單直觀。通過今天的Where學習,更加熟練了這方面的操作,也讓我更加喜歡神奇的Linq了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM