linq 查询语句! 有点难度!

wangxiangbot44 2009-12-16 01:56:05
怎么用linq对类别分组后,然后查询每个类别的前10条记录>??
...全文
476 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
hebin_xiaoshe 2011-01-21
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 g_lbz 的回复:]
楼主说的有些不太明白,如果是查找每个分类的内容的话楼上的就可以了
如果是取出各个内容的前10条内容的集合的话,可以如下:


C# code

var info = (from s in set
group s by s.ID into temp
select t……
[/Quote]

hao
  • 打赏
  • 举报
回复
楼上已解决
happy664618843 2010-12-31
  • 打赏
  • 举报
回复
from p in usersinfo group p by p.ID into g select new{count=g.count()}
wb1125 2010-03-04
  • 打赏
  • 举报
回复
var result = DBContext.Customers.GroupBy(b => b.Author).Select(p => new { List = p.Take(10) });
g_lbz 2010-01-06
  • 打赏
  • 举报
回复
只需要先分组,然后在从分组的结果里面去指定的条数即可
如下,因为读取的每个分组的结果是一个集合,所以需要用SelectMany方法

var q = DBContext.Customers.GroupBy(c => c.GroupID).Select(c => c.Take(10)).SelectMany(m => m).ToList();
caixian 2010-01-01
  • 打赏
  • 举报
回复
里面不是有一个函数吗,看看MSDN,肯定可以
zhongjiekangping 2009-12-25
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 wuyq11 的回复:]
var q =  (from g in
        (from c in db.Customers
        group c by c.Country)
      select new { g.Key, Count = g.Count()}).Take(10);


[/Quote]

up
mrwsr 2009-12-18
  • 打赏
  • 举报
回复
不知道是不是要这种效果呢?


public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
gv1.DataSource = GetData2();
gv1.DataBind();

}


public List<Product> GetData2()
{
NorthwindDataContext dc = new NorthwindDataContext();
List<Product> products = new List<Product>();
foreach (Category c in dc.Categories)
{
products.AddRange(c.Products.Where<Product>(n => n.CategoryID == c.CategoryID).Take(2));
}
return products;
}
}

zhuhaizengyuelin 2009-12-18
  • 打赏
  • 举报
回复
学习了 谢谢!
g_lbz 2009-12-17
  • 打赏
  • 举报
回复
楼主说的有些不太明白,如果是查找每个分类的内容的话楼上的就可以了
如果是取出各个内容的前10条内容的集合的话,可以如下:


var info = (from s in set
group s by s.ID into temp
select temp.Take(10)).SelectMany(f => f).ToList();

wuyq11 2009-12-16
  • 打赏
  • 举报
回复
var q = (from g in
(from c in db.Customers
group c by c.Country)
select new { g.Key, Count = g.Count()}).Take(10);

zjhiphop2006 2009-12-16
  • 打赏
  • 举报
回复
{from tab in db.tab
group tab by tab.sortcolumn
select tab
}.take(10)
wangxiangbot44 2009-12-16
  • 打赏
  • 举报
回复
上面的,不太明白
liu2835993 2009-12-16
  • 打赏
  • 举报
回复
from rs in (from it in table select new {列x=列1,列1,列2,列3,列4} )
.Union(from it in table select new {列x=列3,列1,列2,列3,列4})
group rs by rs.列x into g

select ....
wangxiangbot44 2009-12-16
  • 打赏
  • 举报
回复
没人顶么?自己沙发!

8,497

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 LINQ
社区管理员
  • LINQ
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧