いくつかの簡単なLINQ

シンプルLINQの&ラムダ構文:
     (1)単純なクエリ:

LINQの语法:
VARデータ= db.Areasで選択したから。
ラムダ语法:
VARデータ= db.Areas。
SQL语法:
文字列sqlStr = "地域からのSELECT *";

     (2)簡単なWHERE句:

LINQ语法:
a.orderId> 20が選択db.orderInfo内からVARデータ=。
ラムダ语法:
VARデータ= db.orderInfo.Where(T => t.orderId> 20)。
SQL语法:
文字列sqlStr = "注文ID> 20 ORDERINFO SELECT * FROM";

     (3)の文の "COUNT、SUM、MIN、MAX" 機能について:

LINQ構文:
.MAX(db.orderInfo SELECT AにおけるAから)VAR =データ(P => p.orderId); //テーブルのクエリのIdの最大数
VARデータ=(Aからdb.orderInfoでSELECT A)。分(P => p.orderId); // テーブルクエリ最小番号イド
VARデータ=(Aからdb.orderInfoでSELECT A).Count(); //テーブルクエリ総データ量
VARデータ(= db.orderInfo中から).SUMを選択した(p => p.orderMoney); // クエリテーブル内のすべての支出の合計数(合計)
ラムダ構文:
VAR = db.orderInfo.Maxデータ(トン=> t.orderId); //テーブルクエリIDの最大数
VAR = db.orderInfo.Minデータ(T => t.orderId); //テーブルのクエリ最も小さい番号のId
VAR = db.orderInfo.Countデータ() ; //クエリテーブルデータの総片の数
VARデータ= db.orderInfo.Sum(トン=> t.orderMoney); // クエリこの表のすべての支出(合計)の合計数
SQL構文:
文字列= sqlstr「SELECT MAX(注文ID)ORDERINFO FROM ";
文字列sqlstr =" SELECT MIN(注文ID)「FROM ORDERINFO。
文字列sqlStr = "ORDERINFO SELECT COUNT(*)FROM";
文字列sqlStr = "ORDERINFO FROM SELECT SUM(orderMoney)"。

     文をソートに関するデータ(3):

LINQの構文:
a.orderId> 20は、[並べ替えa.orderId降順SELECT Aであるdb.orderInfoでAからVAR =データ;昇順キーワード入手でき昇順//逆ソート
ラムダ構文:
I.単一のソートフィールド:
VAR =データdb.orderInfo.OrderByDescending(T => t.orderId).Where (T => t.orderId> 20).ToList(); // 利用可能なキーワードのOrderBy昇順逆ソート
ケース2に、マルチプライマリおよびセカンダリソートフィールド:
。VARのpriceMonthEntities = priceMonthApp.GetList()のOrderBy (トン=> t.F_Year).ThenBy(トン=> t.F_Month).ToListは(); // 最初によると、年、月で昇順にソートして、昇順にソート
SQL構文:
文字列sqlStr = "ORDERINFO SELECT * FROM注文ID> 20 ORDER BY注文ID DESC"; // キーワード可能なASC昇順逆ソート

     ページクエリステートメントの(4):

LINQの構文:
(db.orderInfo SELECT AでAから)VAR =データ.SKIP((-the pageIndexパラメータ1)* pageSizeを。).Take(pageSizeを).ToList(); // pageIndexパラメータ:現在のページ、pageSizeを:ページングデータ表示バー数
ラムダ構文:
VAR =データdb.orderInfo.Skip((-the pageIndexパラメータ1)* pageSizeを。).Take(pageSizeを).ToList();; // pageIndexパラメータ:現在のページ、pageSizeを:データ・ページの数
SQL構文:
文字列sqlStr = "SELECT TOPのpageSize * FROM ORDERINFO WHERE注文ID NOT IN(SELECT TOP((pageIndexパラメータ- ORDERINFO FROM 1)* pageSizeを)注文ID)"; // pageIndexパラメータ: 現在のページ、pageSizeを:データ・ページの数

     (5)ファジィクエリ(のような)ステートメントで:

LINQ構文:
a.orderId.Contains(1)SELECT A db.orderInfoにおけるAからVAR =データ; //ファジーマッチングキーワード含ま
ラムダ構文:
VAR = db.orderInfo.Whereデータ(T => T. F_UserId.Contains( "1"))ToListメソッド (); // あいまい一致キーワードを使用して含まれています。
SQL構文:
文字列= sqlstr "SELECT * FROM ORDERINFO注文ID LIKE '%% 12は'"; //キーワードのように使用しますあいまい一致

     クエリステートメントをグループ化について(6):

LINQの構文:
db.orderInfo [並べ替えa.orderId降順でAからVAR =データ
グループa.orderType INTO SELECTによってA新しい新しいS {
s.key、パケットフィールド//
s.sMoney = s.Sum(A => a.orderMoney )、グループ//は支出の総量を計算する
s.maMoney = s.Maxは(A => a.orderMoney )、 後//グルーピング最大費やす計算
s.miMoney = s.Min(A => a.orderMoney )//過ごした後に最小パケットを算出
};
ラムダ構文:
VAR = db.orderInfo.GroupByデータ(P => p.recType).Select(T => t.Key).ToList(); //使用GROUPBYグルーピングクエリキー(単一のフィールド)
VAR db.orderInfo.GroupByデータ=(P => {p.recType新しい新しい、p.orderId})を選択し(T => {RECTYPE新しい新しい= t.Key.recType、注文ID = 。t.Key.orderId})ToListメソッド(); // 使用するキーワードGROUPBYクエリパケット(Sフィールド)
SQL構文:
文字列= sqlstr「OrderType SELECT、SUM(orderMoney)、MAX(orderMoney)、MIN(orderMoney) ORDERINFO GROUP BY orderType「FROM; //グループに問い合わせてキーワードグループを使用

     クエリステートメントに関連付けられているマルチテーブルの上に(7):

LINQ構文:
VAR = Aからdb.orderInfo Eのデータに等しいに参加はa.orderTypeId db.orderType ON SELECT R&LTをe.id; //参加キーワードテーブルに参加使用
db.orderInfoにおけるTから= VARクエリに参加中のSをSELECT ONは、等号がdb.orderType s.id t.orderTypeId
新しい新しい{
注文ID = t.id、
orderTypeName = s.name、
...
}
:ラムダ構文
VAR = db.orderInfo.Joinデータ(db.orderType、T => Tを.orderTypeId、S => s.id、(T、S)=> T).OrderByDescending(T => t.orderId)。
選択(
T => {新たな新しい
注文ID = TTID、
orderTypeName = tsname、
...
}) .ToList(); //参加参加キーワードテーブルを使用する
SQL構文を:(SQL文のアソシエーションテーブルは、いくつかの方法があり、一つだけの場合は、本明細書に引用された)
文字列sqlstr =「ORDERINFO SELECT * O WHERE o.orderTypeId OrderType T =、FROM t.id ORDER BY t.createDate「; //使用するキーワードテーブルに参加したクエリに参加

     クエリ文の中(8):

LINQの構文:
db.orderInfoでAからVAR =データ(a.orderId)SELECT A含みます(新しい新しいINT [2213,43311,32422]?); //キーワードテーブル結合の参加を使用しています。
ラムダ構文:
VAR =データdb.orderInfo.Where(トン=>(新しいint型 [2213,43311,32422])(t.orderId)?。入って)ToListメソッドを(); // キーワードテーブル結合が参加を使用しています。
SQL構文:
文字列= sqlstr "注文ID IN(ORDERINFO SELECT * FROM 2213,43311,32422)は「; // 使用したクエリに参加キーワードテーブルに参加します

     (9)は、再クエリステートメントに行きます:

LINQ構文:
{P} a.orderTypeId INTO SELECTによってdb.orderInfo新しい新しいグループ内からVARデータ= -グループ_group.FirstOrDefault(); //テーブルキーワード群データ重複除外使用
db.orderInfo中からVARデータ= P新しいによって{a.orderTypeId、...グループ } _groupに_group.FirstOrDefaultを選択(); // 重量複数のテーブルデータのグループキーフィールドを使用
ラムダ構文:
単一重複除外:
VAR =データdb.orderInfo .GroupBy(T => t.orderTypeId).Select (R => r.First())ToListメソッド();. // GROUPBYキーワードテーブルのデータ重複排除用い
VARデータ= db.orderInfo.DistinctBy(T => t.orderTypeId).ToList(); //用テーブルDistinctByキーワードデータ重複排除
重量に対して複数のフィールド:
VAR = db.orderInfo.GroupByデータ(T => {t.orderTypeId新しい新しいです、...})。選択した(r => r.First() )ToListメソッド();. // テーブルデータ重複排除のキーフィールドを複数用いて、GROUPBY
VARデータ= db.orderInfo.DistinctBy(T =>新しい{t.orderTypeIdを、。 ..})ToListメソッド(); // 量の複数のデータ・フィールドに使用DistinctByキーワードテーブル
SQL構文:
文字列sqlStr = "FROM DISTINCT orderTypeIdを選択 ORDERINFO"; // データの重複排除のためにDISTINCTキーワードの表
の文字列sqlStr = "ORDERINFO FROM SELECT orderTypeId GROUP BY orderTypeId"; // 使用GROUP BYキーワードテーブルのデータ重複排除

https://blog.csdn.net/qq_42773229/article/details/88529288

 

おすすめ

転載: www.cnblogs.com/BkyeSky/p/12069830.html