请教一个 重复记录 的问题

alwaysmay 2009-04-22 05:15:23
小弟最近遇到点麻烦 向大家请教下

我有2张表 一个记录 用户信息 ; 一个记录 这个用户的留言信息

如下:
第一张表
id <=== 用户ID
name <====用户名
第二张表
Rid <===留言的ID,自增长,越大表示留言时间越晚
id <===对应用户ID
Content <=== 留言内容


我现在想显示一个列表,显示最近的留言过的用户,按照时间最近排序。(每一个用户只显示一次)

做了一个查询

from user db.UserIndex
join map in db.feedback
on user.id equals map.Rid
orderby map.Rid descending
select user

这个查询完以后,排序是正常了,但是有很多重复记录,比如:

2 小王
1 小明
2 小王
2 小王

我修改了一下
(from user db.UserIndex
join map in db.feedback
on user.id equals map.Rid
orderby map.Rid descending
select user).Distinct()

但是结果就成了

1 小明
2 小王


顺序就不正确了??


我请教下大家啊,我要怎么做才能正确显示成:

2 小王
1 小明


这里谢谢大家了,~~~~~~~~~~~
...全文
75 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
灿烂阳光168 2009-04-22
  • 打赏
  • 举报
回复
select a.id,b.name from (select * from map order by rid desc) as a inner join map as b on a.id=b.id
alwaysmay 2009-04-22
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 wxg22526451 的回复:]
try->

C# codevar q=(from user db.UserIndex
join map in db.feedback
on user.id equals map.Rid
orderby map.Rid descending
select user).Distinct().OrderByDescending(c => c.user);
[/Quote]

额~~~ 貌似不能 呵呵 先谢谢了
wxg22526451 2009-04-22
  • 打赏
  • 举报
回复
try->
var q=(from user db.UserIndex 
join map in db.feedback
on user.id equals map.Rid
orderby map.Rid descending
select user).Distinct().OrderByDescending(c => c.user);
alwaysmay 2009-04-22
  • 打赏
  • 举报
回复
from user db.UserIndex
join map in db.feedback
on user.id equals map.Rid (on user.id equals map.id)
orderby map.Rid descending
select user


是我写错了,我程序里是对的,论坛写帖子的时候写错的。

8,497

社区成员

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

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