LINQ查询语句能够将复杂的查询应用简化成一个简单的查询语句,不仅如此,LINQ还支持编程语言本有的特性进行高效的数据访问和筛选。虽然LINQ在写法上和SQL语句十分相似,但是LINQ语句在其查询语法上和SQL语句还是有出入的,SQL查询语句如下所示。
select * from student,class where student.c_id=class.c_id //SQL查询语句
上述代码是SQL查询语句,对于LINQ而言,其查询语句格式如下所示。
var mylq = from l in lq.Student from cl in lq.Class where l.C_ID==cl.C_ID select l; //LINQ查询语句
上述代码作为LINQ查询语句实现了同SQL查询语句一样的效果,但是LINQ查询语句在格式上与SQL语句不同,LINQ的基本格式如下所示。
var <变量> = from <项目> in <数据源> where <表达式> orderby <表达式>
LINQ语句不仅能够支持对数据源的查询和筛选,同SQL语句一样,还支持ORDER BY等排序,以及投影等操作,示例查询语句如下所示。
var st = from s in inter where s==3 select s; //LINQ查询
var st = from s in inter where (s * s) % 2 == 0 orderby s descending select s; //LINQ条件查询
从结构上来看,LINQ查询语句同SQL查询语句中比较大的区别就在于SQL查询语句中的SELECT关键字在语句的前面,而在LINQ查询语句中SELECT关键字在语句的后面,在其他地方没有太大的区别,对于熟悉SQL查询语句的人来说非常容易上手。
请记住一点,LINQ执行查询后返回的是IEnumerable对象,可以利用foreach对其进行遍历处理!