请路过的好人帮我看个SQL语句
表如下:
ID NUMBER VALUE
1 2 1
2 3 1
3 1 2
4 5 2
需要查找出相同VALUE的记录中NUMBER最大的那个,同时把ID也包含在结果集中
问了一圈人也搞不定,只好发网上了。
问题点数:20、回复次数:6Top
1 楼footpath(footpath)回复于 2006-03-01 15:46:30 得分 7
select a.ID, b.number
from table a, (select min(number) as number,value from table group by number) b
where a.number = b.number and a.value = b.value
Top
2 楼zbxubing(冰)回复于 2006-03-01 15:47:00 得分 6
select max(NUMBER) from table group by VALUE
然后把这个结果集作为一个表,与原来的表连接得出idTop
3 楼lsqkeke(可可)回复于 2006-03-01 15:47:44 得分 7
select a.* from tb a,
(select number=max(number),value from tb group by value)b
where a.number=b.number and a.value=b.valueTop
4 楼grayfoxdie(灰狐)回复于 2006-03-01 15:51:34 得分 0
TO:zbxubing(冰)
我也想过连接,但是不会写。你能给个示例吗?Top
5 楼grayfoxdie(灰狐)回复于 2006-03-01 15:57:59 得分 0
footpath(footpath)和lsqkeke(可可),看上去同一思路,我觉得很可行,由于实际操作的表和它不同,所以我还要再看。先谢谢大家Top
6 楼grayfoxdie(灰狐)回复于 2006-03-01 16:00:00 得分 0
出了个问题,如果NUMBER为空,好象就不能使用a.number=b.number ,是这样的吗?
Top




