java linq是什么,让我们一起了解一下?
LINQ是一种完全不同的查询语言,查询语言通常是具有许多关键字的声明性编程语言,提供的控制流元素很少,但是具有很高的描述性,最受欢迎的查询语言是SQL,这是ISO / IEC标准化的结构化查询语言,主要用于关系数据库。
LINQ使用示例:
当查看LINQ-to-SQL文档给出的一些示例时, 例如Count()聚合函数:
System.Int32 notDiscontinuedCount = (from prod in db.Products where !prod.Discontinued select prod) .Count(); Console.WriteLine(notDiscontinuedCount);
在上面的示例中,尚不清楚立即将.Count()函数转换为带括号的查询中SQL count(*)聚合函数(然后为什么不将其放入投影中?),或者是否将其应用仅在执行查询后,才在应用程序内存中。 如果需要将大量记录从数据库传输到内存,则后者将是禁止的。 根据交易模型的不同,它们甚至需要被读取锁定!
这里给出了另一个示例,其中解释了分组 :
var prodCountQuery = from prod in db.Products group prod by prod.CategoryID into grouping where grouping.Count() >= 10 select new { grouping.Key, ProductCount = grouping.Count() };
在这种情况下,LINQ对它的语言方面建模完全不同于SQL。 上面的LINQ where子句显然是SQL HAVING子句。 但是,这不会直接映射到SQL,并且LINQ必须在内部使用它来生成类型化的输出。
以上就是小编今天的分享了,希望可以帮助到大家。