Looking for c# Answers? Try Ask4KnowledgeBase
Looking for c# Keywords? Try Ask4Keywords

C# LanguageLINQクエリ


前書き

LINQはtegrated Q ueryIN Lの anguageの略頭字語です。これは、さまざまな種類のデータソースおよび形式にわたるデータを操作するための一貫したモデルを提供することによって、クエリ言語を統合する概念です。同じ基本コーディングパターンを使用して、XMLドキュメント、SQLデータベース、ADO.NETデータセット、.NETコレクション、およびLINQプロバイダが利用可能なその他の形式のデータをクエリおよび変換します。

構文

  • クエリ構文:

    • <コレクション>の<範囲変数>から
    • [from <range variable> in <collection>、...]
    • <フィルタリング、結合、グループ化、集約演算子、...> <ラムダ式>
    • <selectまたはgroupBy演算子> <結果を定式化する>
  • メソッドの構文:

    • Enumerable.Aggregate(func)
    • Enumerable.Aggregate(seed、func)
    • Enumerable.Aggregate(seed、func、resultSelector)
    • Enumerable.All(述語)
    • Enumerable.Any()
    • Enumerable.Any(述語)
    • Enumerable.AsEnumerable()
    • Enumerable.Average()
    • Enumerable.Average(セレクタ)
    • Enumerable.Cast <Result>()
    • Enumerable.Concat(second)
    • Enumerable.Contains(value)
    • Enumerable.Contains(value、comparer)
    • Enumerable.Count()
    • Enumerable.Count(述語)
    • Enumerable.DefaultIfEmpty()
    • Enumerable.DefaultIfEmpty(defaultValue)
    • Enumerable.Distinct()
    • Enumerable.Distinct(comparer)
    • Enumerable.ElementAt(index)
    • Enumerable.ElementAtOrDefault(index)
    • Enumerable.Empty()
    • Enumerable.Except(秒)
    • Enumerable.Except(second、comparer)
    • Enumerable.First()
    • Enumerable.First(述語)
    • Enumerable.FirstOrDefault()
    • Enumerable.FirstOrDefault(述語)
    • Enumerable.GroupBy(keySelector)
    • Enumerable.GroupBy(keySelector、resultSelector)
    • Enumerable.GroupBy(keySelector、elementSelector)
    • Enumerable.GroupBy(keySelector、comparer)
    • Enumerable.GroupBy(keySelector、resultSelector、comparer)
    • Enumerable.GroupBy(keySelector、elementSelector、resultSelector)
    • Enumerable.GroupBy(keySelector、elementSelector、comparer)
    • Enumerable.GroupBy(keySelector、elementSelector、resultSelector、comparer)
    • Enumerable.Intersect(秒)
    • Enumerable.Intersect(second、comparer)
    • Enumerable.Join(inner、outerKeySelector、innerKeySelector、resultSelector)
    • Enumerable.Join(inner、outerKeySelector、innerKeySelector、resultSelector、comparer)
    • Enumerable.Last()
    • Enumerable.Last(述語)
    • Enumerable.LastOrDefault()
    • Enumerable.LastOrDefault(述語)
    • Enumerable.LongCount()
    • Enumerable.LongCount(述語)
    • Enumerable.Max()
    • Enumerable.Max(セレクタ)
    • Enumerable.Min()
    • Enumerable.Min(セレクタ)
    • Enumerable.OfType <TResult>()
    • Enumerable.OrderBy(keySelector)
    • Enumerable.OrderBy(keySelector、comparer)
    • Enumerable.OrderByDescending(keySelector)
    • Enumerable.OrderByDescending(keySelector、comparer)
    • Enumerable.Range(開始、カウント)
    • Enumerable.Repeat(要素、カウント)
    • Enumerable.Reverse()
    • Enumerable.Select(セレクタ)
    • Enumerable.SelectMany(セレクタ)
    • Enumerable.SelectMany(collectionSelector、resultSelector)
    • Enumerable.SequenceEqual(second)
    • Enumerable.SequenceEqual(second、comparer)
    • Enumerable.Single()
    • Enumerable.Single(述語)
    • Enumerable.SingleOrDefault()
    • Enumerable.SingleOrDefault(述語)
    • Enumerable.Skip(count)
    • Enumerable.SkipWhile(述語)
    • Enumerable.Sum()
    • Enumerable.Sum(セレクタ)
    • Enumerable.Take(count)
    • Enumerable.TakeWhile(述語)
    • orderedEnumerable.ThenBy(keySelector)
    • orderedEnumerable.ThenBy(keySelector、comparer)
    • orderedEnumerable.ThenByDescending(keySelector)
    • orderedEnumerable.ThenByDescending(keySelector、comparer)
    • Enumerable.ToArray()
    • Enumerable.ToDictionary(keySelector)
    • Enumerable.ToDictionary(keySelector、elementSelector)
    • Enumerable.ToDictionary(keySelector、comparer)
    • Enumerable.ToDictionary(keySelector、elementSelector、comparer)
    • Enumerable.ToList()
    • Enumerable.ToLookup(keySelector)
    • Enumerable.ToLookup(keySelector、elementSelector)
    • Enumerable.ToLookup(keySelector、comparer)
    • Enumerable.ToLookup(keySelector、elementSelector、comparer)
    • Enumerable.Union(秒)
    • Enumerable.Union(second、comparer)
    • Enumerable.Where(述語)
    • Enumerable.Zip(second、resultSelector)

備考

LINQクエリを使用するには、 System.Linqをインポートする必要があります。

Method Syntaxはより強力で柔軟性がありますが、Query Syntaxはよりシンプルで使い慣れたものになります。 Query構文で記述されたすべてのクエリは、コンパイラによって機能構文に変換されるため、パフォーマンスは同じです。

照会オブジェクトは、使用されるまで評価されないため、パフォーマンスの低下なしに変更または追加することができます。

LINQクエリ 関連する例