首页 > 代码库 > ef 查询总结
ef 查询总结
1、Linq 查询两张表;a表和b表,要得到的数据是a表数据b表没有
例如:a表有5条数据1,2,3,4,5;b表有2条数据1,3;那么就用dataGridView1输出2,4,5;link语句要怎么写
from x in a where !b.Any(y=>y.id==x.id) select x;
------------------------------------- 转化成的sql类似如下
SELECT [t0].[ID] AS [ID] FROM [a] AS [t0] WHERE NOT (EXISTS( SELECT NULL AS [EMPTY] FROM [b] AS [t1] WHERE [t1].[ID] = [t0].[ID] ))
这样b表中没有的就输出了。
2、Linq获取两个List或数组的差集交集
List<int> list1 = new List<int>();list1.Add(1);list1.Add(2);list1.Add(3);List<int> list2 = new List<int>();list2.Add(3);list2.Add(4);list2.Add(5);//得到的结果是4,5 即减去了相同的元素。List<int> list3 = list2.Except(list1).ToList();foreach (int i in list3){ MessageBox.Show(i.ToString());}
合并两个数组,并去掉重复元素,然后排序(C#)
List<int> numbers1 = new List<int>() { 5, 4, 1, 3, 9, 8, 6, 7, 12, 10 };List<int> numbers2 = new List<int>() { 15, 14, 11, 13, 19, 18, 16, 17, 12, 10 };var newQuerty = numbers1.Concat(from n in numbers2where !numbers1.Contains(n)select n).OrderBy(n=>n);
合并两个数组,并去除合并后的重复数据, 并排序
int[] A={1,2,2,3,4,5,6,6,6}; int[] B={2,2,2,3,7,8,9,5}; List<int> list = new List<int>(A); list.AddRange(B); list.Sort(); //去除重复项 foreach (int i in list.Distinct<int>()) { Console.WriteLine(i); }
C# 取两个数组的相同元素
以往我们都是肯定绞尽脑汁,肯定什么循环,元素大小,什么因素都考虑进去。但是现在采用Linq可以很好的解决这个问题。找出两个或多个数组的相同项。
代码相当简单:
usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text; namespaceTest4_03{ classProgram { staticvoidMain(string[] args) { string[] names = {"Adams","Arthur","Buchanan","Tsbuchis","ShCian","FuchsiaLinda","DecheChen","Lotheer","FindLanciCade","SorchLand","JiangZheng","MisiiLoda","Gtod","Dfac","Lama","BakCades","Losangle","ZheWQ","GehengDahaLothi","ToryLandey","DakaLothy","BthLanda","MenNorth","Fith","FoxMain","DontM","Saobba","Del","Sala","Ghero","BhthLaPhda"}; IEnumerable<string> skip = names.Skip(10); IEnumerable<string> take = names.Take(11); //取出两个序列中交集部分,按理论应该输出JiangZheng IEnumerable<string> intersect = skip.Intersect(take); foreach(varsinintersect) { Console.WriteLine(s); } Console.ReadKey(); } }}
ef 查询总结
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。