Linq Translation of SQL "IN" Statement
Dalam bidang manipulasi data, pernyataan SQL "IN" ialah alat yang berkuasa untuk memadankan baris dengan senarai nilai tertentu. Keupayaan ini boleh diterjemahkan dengan lancar ke dalam LINQ (Language Integrated Query) menggunakan kaedah "Contains".
Mari kita pertimbangkan contoh skema yang terdiri daripada tiga jadual: "Item," "Tag" dan "TagMap." Katakan kami mempunyai senarai TagId dan ingin mendapatkan semula "Item" yang sepadan. Dalam SQL, kita boleh menggunakan pernyataan "IN", seperti:
SELECT * FROM Items WHERE TagId IN (2,3,4,7)
Untuk mencapai hasil yang sama menggunakan LINQ, kita boleh menggunakan pertanyaan berikut:
var TagIds = new int[] {2,3,4,7}; var query = from tagMap in Context.TagMaps where TagIds.Contains(tagMap.TagId) select tagMap.Items;
LINQ ini pertanyaan berkesan menjana klausa "IN (2,3,4,7)". Kaedah "Mengandungi" menyemak sama ada TagId yang ditentukan terdapat dalam senarai yang disediakan, dengan itu menapis baris dengan sewajarnya.
Pertanyaan yang terhasil mendapatkan semula "Item" yang dikehendaki yang sepadan dengan senarai TagId yang diberikan. Ini menunjukkan kuasa LINQ untuk melaksanakan operasi pengambilan data yang kompleks dengan cara yang ringkas dan cekap.
Atas ialah kandungan terperinci Bagaimanakah LINQ Menerjemahkan Penyata 'IN' SQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!