C# DataTable排序问题

lijianguo3961 2012-03-08 08:47:42
我从数据库查询出来的数据格式为

id

12
12
12
12
11
11
11

我在c#里面用datatable来接受它,并且根据元素出现重复的次数来排序,结果为:12,11,因为12出现4次,而11出现三次,所以12排在11的前面,明白嘛?

多谢!!
...全文
323 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
lijianguo3961 2012-03-08
  • 打赏
  • 举报
回复
感谢
huangwenquan123

感谢所有关注帖子的人,我知道咋弄了,呵呵,谢谢,结贴
EnForGrass 2012-03-08
  • 打赏
  • 举报
回复

select id,COUNT(id) from @table group by id ORDER BY COUNT(id) DESC
huangwenquan123 2012-03-08
  • 打赏
  • 举报
回复

create table #table (id int)
insert into #table
select 12 union all
select 11 union all
select 11 union all
select 12 union all
select 12 union all
select 12

select id,count(1) as c from #table group by id order by c desc
/*
12 4
11 2
*/
lijianguo3961 2012-03-08
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 q107770540 的回复:]
引用楼主 lijianguo3961 的回复:
va order=db.……
[/Quote]

公司是VS05的,数据库是2000的,哎!!
q107770540 2012-03-08
  • 打赏
  • 举报
回复
va order=db.AsEnumerable().GroupBy(t=>t.Field<int>("id")).OrderByDescending(g=>g.Count());
q107770540 2012-03-08
  • 打赏
  • 举报
回复
OrderByDescend ===> OrderByDescending
q107770540 2012-03-08
  • 打赏
  • 举报
回复
[Quote=引用楼主 lijianguo3961 的回复:]
我从数据库查询出来的数据格式为

id

12
12
12
12
11
11
11

我在c#里面用datatable来接受它,并且根据元素出现重复的次数来排序,结果为:12,11,因为12出现4次,而11出现三次,所以12排在11的前面,明白嘛?

多谢!!
[/Quote]

va order=db.AsEnumerable().Group(t=>t.Field<int>("id")).OrderByDescend(g=>g.Count());
lijianguo3961 2012-03-08
  • 打赏
  • 举报
回复

select id from tb_news where charindex('车',keyword)>0 union all select id from tb_news where charindex('汽车',keyword)>0


sql语句是这样的,我不是说让它的列排序,我SQL语句查询出来,是有重复值的,我是想在c#里面按元素出现的次数进行排序,不是说显示:12,12,12,12,11,11,11,
因为我的最终结果就是:12,11,谁出现次数最多,谁在前面,而且就一个字段,去重复!!
修改一下昵称 2012-03-08
  • 打赏
  • 举报
回复

declare @table table(id int)
insert into @table
select 12 union all
select 11 union all
select 11 union all
select 12 union all
select 12 union all
select 12

select list.* from @table list
LEFT JOIN
(
select id,COUNT(1) cou from @table group by id
) T ON T.id = list.id
order by T.cou DESC


/*

(6 行受影响)
id
-----------
12
12
12
12
11
11

(6 行受影响)

*/
bdmh 2012-03-08
  • 打赏
  • 举报
回复
那你查询时,sql中增加一个信息,count(*) group by id ,然后根据这个值排序

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

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