統合言語クエリリファレンス
NCache LINQ (言語統合クエリ) のクエリと Lambda の両方の実行をサポートします。このページでは、各実行タイプでサポートされている演算子のサンプル クエリを提供します。
まず、以下は現在サポートされていないことに注意してください。 NCache LINQ (言語統合クエリ) プロバイダー:
Nested
クエリORDER BY
オペレータGROUP BY
オペレータJOIN
オペレータ
通常、構文は次のようになります。
FROM [Object] IN [List]
WHERE [Condition]
SELECT [Object]
次の例では、 プロダクト を含むクラスオブジェクト 商品ID, 商品名, カテゴリー 属性を指定します。
クエリ式の例はLambda式クエリの代替であり、その逆も同様であることに注意してください。
統合言語クエリでサポートされている射影演算子
統合言語クエリでサポートされている射影演算子は次のとおりです。
オペレーター | 例 |
---|---|
select |
クエリ: from product in products select product; ラムダ: products.Select(p => p); |
制限演算子
統合言語クエリでサポートされている制限演算子は次のとおりです。
オペレーター | 例 |
---|---|
where |
クエリ: from product in products where product.ProductID == 1001 select product; ラムダ: products.Where(p => p.ProductID == 1001); |
基本的なクエリ演算子
以下は、統合言語クエリでサポートされている基本クエリ演算子です。
オペレーター | 例 |
---|---|
== |
クエリ: from product in products where product.ProductID == 1001 select product; ラムダ: products.Select(p => p).Where(p => p.ProductID == 1001); |
!= |
クエリ: from product in products where product.ProductID != 1001 select product; ラムダ: products.Select(p => p).Where(p => p.ProductID != 1001); |
< |
クエリ: from product in products where product.ProductID < 1001 select product; ラムダ: products.Select(p => p).Where(p => p.ProductID < 1001); |
> |
クエリ: from product in products where product.ProductID > 1001 select product; ラムダ: products.Select(p => p).Where(p => p.ProductID > 1001); |
<= |
クエリ: from product in products where product.ProductID <= 1001 select product; ラムダ: products.Select(p => p).Where(p => p.ProductID <= 1001); |
>= |
クエリ: from product in products where product.ProductID >= 1001 select product; ラムダ: products.Select(p => p).Where(p => p.ProductID >= 1001); |
論理演算子
統合言語クエリでサポートされている論理演算子は次のとおりです。
オペレーター | 例 |
---|---|
&& |
クエリ: from product in products where product.ProductID >= 1001 && product.ProductName == "Chai" select product; ラムダ: products.Select(p => p).Where(p => p.ProductID >= 1001 && p.ProductName == "Chai"); |
|| |
クエリ: from product in products where product.ProductID == 1001 || product.ProductName == "Chai" select product; ラムダ: products.Select(p => p).Where(p => p.ProductID >= 1001 || p.ProductName == "Chai"); |
集計演算子
統合言語クエリでサポートされている集計演算子は次のとおりです。
オペレーター | 例 |
---|---|
Count |
クエリ: (from product in products where product.Category == "Beverages" select product).Count(); ラムダ: products.Select(p => p).Where(p => p.Category == "Beverages").Count(); |
Max |
クエリ: (from product in products where product.Category == "Beverages" select product.ProductID).Max(); ラムダ: products.Where(p => p.Category == "Beverages").Max(p => p.ProductID); |
Min |
クエリ: (from product in products where product.Category == "Beverages" select product.ProductID).Min(); ラムダ: products.Where(p => p.Category == "Beverages").Min(p => p.ProductID); |
Average |
クエリ: (from product in products where product.ProductID < 1010 select product.ProductID).Average(); ラムダ: products.Where(p => p.ProductID > 1001).Average(p => p.ProductID); |
Sum |
クエリ: (from product in products where product.ProductID <= 1010 select product.ProductID).Sum(); ラムダ: products.Where(p => p.ProductID > 1001).Sum(p => p.ProductID); |
ワイルドカード演算子
以下は、統合言語クエリでサポートされているワイルドカード演算子です。
オペレーター | 例 |
---|---|
StartsWith |
クエリ: from product in products where product.Category.StartsWith("Be") select product; ラムダ: products.Select(p => p).Where(p => p.Category.StartsWith("Be")); |
EndsWith |
クエリ: from product in products where product.Category.EndsWith("ages") select product; ラムダ: products.Select(p => p).Where(p => p.Category.EndsWith("ages")); |
Contains |
クエリ: from product in products where product.Category.Contains("Bever") select product; ラムダ: products.Select(p => p).Where(p => p.Category.Contains("Bever")); |
Equals |
クエリ: from product in products where product.Category.Equals("Beverages") select product; ラムダ: products.Select(p => p).Where(p => p.Category.Equals("Beverages")); |
も参照してください
。ネット: Alachisoft.NCache.Linq 名前空間