请问这句SQL怎么写?大侠帮忙?搞死我了,急!!!!!!!!

NoReady 2003-11-14 11:06:36
请问这句SQL怎么写?
如下表:

Id Name Rev
--------------------------
1 aaa 1
1 bbb 2
1 ccc 3
2 eee 1
2 ffff 2
2 gggk 3

如何取出上表中rev为最大的记录?就一个条件(rev为最大)???

...全文
97 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
pengdali 2003-11-14
  • 打赏
  • 举报
回复
select * from 表 where id+rev in(select distinct id+max(rev) from 表 group by id);
trampwind 2003-11-14
  • 打赏
  • 举报
回复
||就是程序里面用的或运算符号,我知道在informix和postgresql中都是可以用的,我刚才是在postgresql中测试过的
NoReady 2003-11-14
  • 打赏
  • 举报
回复
SQL里面好像没"||"的,我把它改成“|”就错了
pengdali 2003-11-14
  • 打赏
  • 举报
回复
select * from 表 tem where rev=(select max(rev) from 表 where id=tem.id)
zjcxc 元老 2003-11-14
  • 打赏
  • 举报
回复
两者的差别就在于,

如果只是楼主给出的数据,两种方法都合适.

如果表中还有其中字段,要查询出每组rev值最大的记录,就只能用第二种方法.
zjcxc 元老 2003-11-14
  • 打赏
  • 举报
回复
--分组与查询记录最大的慨念是不同的.

--如果是分组:
select id,name,max(rev) from 表 group by id,name


--如果是查询记录最大的:
select * from 表 a where rev=(select max(rev) from 表 where id=a.id and name=b.name)

trampwind 2003-11-14
  • 打赏
  • 举报
回复
你是按ID分组吧,要是ID,NAME分组的话因为name不同,如:select * from 表 where rev in(select max(rev) from 表 group by id,name);所有记录都是满足条件的
trampwind 2003-11-14
  • 打赏
  • 举报
回复
select * from 表 where id||rev in(select distinct id||max(rev) from 表 group by id); 查出的只有 1 ccc 3 和 2 gggi 4,
是不是你所要求的。
NoReady 2003-11-14
  • 打赏
  • 举报
回复
不好意思,还有一点最重要的没说明:按ID及NAME分组,即我要得到的记录为:
Id Name Rev
--------------------------
1 ccc 3

2 gggi 4
acefr 2003-11-14
  • 打赏
  • 举报
回复
你这样的记录里面rev最大为4的,而且只有1条啊,所以当然只能查出1条记录啦
NoReady 2003-11-14
  • 打赏
  • 举报
回复
谢谢各位,这样不行的啊,如果记录为这样的话:
Id Name Rev
--------------------------
1 aaa 1
1 bbb 2
1 ccc 3
2 eee 1
2 ffff 2
2 gggk 3
2 gggi 4

就只能查出一条记录,而查不出2条的??
请继续help
DigJim 2003-11-14
  • 打赏
  • 举报
回复
select * from 表 where rev= (select max(rev) from 表)
welyngj 2003-11-14
  • 打赏
  • 举报
回复
select * from a where rev=(select max(rev) from a)
pengdali 2003-11-14
  • 打赏
  • 举报
回复
select * from 表 where rev=(select max(rev) from 表)
NoReady 2003-11-14
  • 打赏
  • 举报
回复
谢谢 pengdali(大力 V3.0)等各位

其实我这个表只是一个结果集,但又没用存储过程,只在vb.net里面用,终于可以解决了!!!!!真的非常感谢!!!
NoReady 2003-11-14
  • 打赏
  • 举报
回复
好,我再试试

34,681

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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