統合言語クエリ
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2024/02/16 13:31 UTC 版)
統合言語クエリ (Language INtegrated Query; LINQ, リンクと発音する) とは、.NET Framework 3.5において、様々な種類のデータ集合に対して標準化された方法でデータを問い合わせること(クエリ)を可能にするために、言語に統合された機能のことである。開発ツールはVisual Studio 2008から対応している。
- ^ [1]
- ^ JSINQ - LINQ to Objects for JavaScript - CodePlex Archive
- ^ linq.js - LINQ for JavaScript - CodePlex Archive
- ^ LINQ to JavaScript - CodePlex Archive
- ^ PHPLinq - LINQ for PHP - Language Integrated Query - CodePlex Archive
- ^ [2]
- ^ [3]
- ^ JaQu
- ^ [4]
- ^ GitHub - heynemann/pynq: Python implementation of Microsoft's .Net Language Integrated Query (LINQ)
- ^ [5]
- 1 統合言語クエリとは
- 2 統合言語クエリの概要
- 3 例
- 4 言語仕様
- 5 LINQに対応する言語
統合言語クエリ
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/08/17 21:54 UTC 版)
「C SharpとJavaの比較」の記事における「統合言語クエリ」の解説
C#には、統合言語クエリの為の拡張されたキーワード群が存在し、ソースコード上でSQL構文に似たクエリを直接記述することができる。このキーワード群は構文糖として機能し、決められた拡張メソッド呼び出しに展開される。 // 数列から偶数を抜き出して表示するvar inputs = new[] { 1, 5, 2, 3, 4, 7, 11, 10, 6 };#if true// LINQクエリ構文var results = from inputValue in inputs where (inputValue % 2) == 0 select inputValue;#else// LINQメソッド構文var results = inputs. Where(inputValue => (inputValue % 2) == 0). Select(inputValue => inputValue);#endifforeach (var resultValue in results){ Console.WriteLine(resultValue);} 統合言語クエリの拡張メソッド群は、コレクションに対するさまざまな集合演算が実装されており、このような演算をロジックで記述することなく、簡単に操作することができる。また、ラムダ式から式ツリー(Expressionクラス)のインスタンスを生成することが出来るため、この機能を使用してデータベースへのクエリ発行・収集を、タイプセーフ性を失うことなく直接的に行うことができる(LINQ to SQL、LINQ to Entitiesなど)。Javaでは、このようなクエリ構文を直接サポートしない。Java8ではC#のLINQメソッド構文に近い記述が可能となるStream APIとラムダ式がサポートされた。
※この「統合言語クエリ」の解説は、「C SharpとJavaの比較」の解説の一部です。
「統合言語クエリ」を含む「C SharpとJavaの比較」の記事については、「C SharpとJavaの比較」の概要を参照ください。
固有名詞の分類
- 統合言語クエリのページへのリンク