1.order by 默认的排序方式为升序(ascending),降序为:descending. 2.group by 对查询的结果进行分组 3.into创建一个临时存储器,可以存储group或者select等子句的结果 order by的例子
int[] values = { 0, 2, 4, 6, 8, 1, 3, 5, 7, 9 };
var value = from v in values orderby v ascending select v;
foreach (var v in value)
{
Console.WriteLine(v);
}
group by的例子
int[] values = { 0, 3, 4, 6, 8, 1, 2, 5, 7, 9 };
var value = from v in values orderby v group v by v % 2 == 0;
foreach (var v in value)
{
foreach (var k in v)
{
Console.WriteLine(k);
}
}
1.注意我改变了 int数组的顺序 2.输出的结果与上一个例子输出的结果是一样的 3.因为group结尾的linq查询获得的将是两个集合,所以我这里用了双层嵌套循环来获取每个集合中的数据 into的例子
int[] values = { 0, 2, 4, 6, 8, 1, 3, 5};
var value = from v in values group v by v%2==0 into g where g.Count()>3 select g;
foreach (var v in value)
{
foreach(var k in v)
Console.WriteLine(k);
}
1.我再次修改了数组 2.仍然是用了嵌套foreach循环 3.这次只输出0 2 4 6 8