開心生活站

位置:首頁 > IT科技 > 

java,linq

IT科技7.8K
<link rel="stylesheet" href="https://js.how234.com/third-party/SyntaxHighlighter/shCoreDefault.css" type="text/css" /><script type="text/javascript" src="https://js.how234.com/third-party/SyntaxHighlighter/shCore.js"></script><script type="text/javascript"> SyntaxHighlighter.all(); </script>

java linq是什麼,讓我們一起了解一下?

LINQ是一種完全不同的查詢語言,查詢語言通常是具有許多關鍵字的聲明性編程語言,提供的控制流元素很少,但是具有很高的描述性,最受歡迎的查詢語言是SQL,這是ISO / IEC標準化的結構化查詢語言,主要用於關係數據庫。

LINQ使用示例:

查看LINQ-to-SQL文檔給出的一些示例時, 例如Count()聚合函數:

System.Int32 notDiscontinuedCount =(from prod in db.Productswhere !prod.Discontinuedselect prod).Count();Console.WriteLine(notDiscontinuedCount);

在上面的示例中,尚不清楚立即將.Count()函數轉換爲帶括號的查詢中SQL count(*)聚合函數(然後爲什麼不將其放入投影中?),或者是否將其應用僅在執行查詢後,纔在應用程序內存中。 如果需要將大量記錄從數據庫傳輸到內存,則後者將是禁止的。 根據交易模型的不同,它們甚至需要被讀取鎖定!

java linq

這裏給出了另一個示例,其中解釋了分組 :

var prodCountQuery =from prod in db.Productsgroup prod by prod.CategoryID into groupingwhere grouping.Count() >= 10select new{grouping.Key,ProductCount = grouping.Count()};

在這種情況下,LINQ對它的語言方面建模完全不同於SQL。 上面的LINQ where子句顯然是SQL HAVING子句。 但是,這不會直接映射到SQL,並且LINQ必須在內部使用它來生成類型化的輸出。

標籤:java linq