查看: 772|回复: 9
|
[解决]SQL Query 拿掉重覆的records
[复制链接]
|
|
Table A:
ID ReportID Name Desc
--- --------- ----- -----------------
1 234 Mail Testing 1
2 234 Mail Testing 2
3 132 Letter Hard cover
4 155 Paper White
5 155 Paper black
. . . .
. . . .
. . . .
请问要如何只拿出一个report id,不要重覆的,我要的result如下:
ID ReportID Name Desc
--- --------- ----- -----------------
1 234 Mail Testing 1
3 132 Letter Hard cover
5 155 Paper black
. . . .
. . . .
. . . .
只要reportid不重复就可以了,其他field可以随便选,请问query能写到吗?
[ 本帖最后由 sawyih1 于 6-9-2006 11:58 AM 编辑 ] |
|
|
|
|
|
|
|
发表于 4-9-2006 07:57 PM
|
显示全部楼层
can, using group by or distinct |
|
|
|
|
|
|
|
楼主 |
发表于 5-9-2006 12:27 PM
|
显示全部楼层
不行﹐distinct 是只可以選一個field,我要的是整个row.
group 呢,也是不能,其他的fields不是integer,是不能group的。 |
|
|
|
|
|
|
|
发表于 5-9-2006 02:48 PM
|
显示全部楼层
i using mysql, can group either text or integer or anything. |
|
|
|
|
|
|
|
发表于 5-9-2006 06:25 PM
|
显示全部楼层
un-tested.
delete from table where ID not in (select max(ID) from table group by ReportID)
or
delete from table where ID not in (select min(ID) from table group by ReportID) |
|
|
|
|
|
|
|
楼主 |
发表于 6-9-2006 11:33 AM
|
显示全部楼层
原帖由 8years 于 5-9-2006 02:48 PM 发表
i using mysql, can group either text or integer or anything.
对不起,之前我说错了,
group可以group到text,interger和其他的,不过必须要用到aggregate function (min,max....),也就是说只可以拿一个field而已。
谢谢你,你给了我很大的启示,
正确的query是
select * from table where ID in (select max(ID) from table group by ReportID)
或者
select * from table where ID in (select min(ID) from table group by ReportID)
最后,请用华语发言,谢谢各位。 |
|
|
|
|
|
|
|
发表于 6-9-2006 07:25 PM
|
显示全部楼层
原帖由 sawyih1 于 6-9-2006 11:33 AM 发表
对不起,之前我说错了,
group可以group到text,interger和其他的,不过必须要用到aggregate function (min,max....),也就是说只可以拿一个field而已。
谢谢你,你给了我很大的启示,
正确的query是 ...
我以为,"拿掉" 是从数据库删除。 |
|
|
|
|
|
|
|
楼主 |
发表于 7-9-2006 11:47 AM
|
显示全部楼层
原帖由 hkloke2000 于 6-9-2006 07:25 PM 发表
我以为,"拿掉" 是从数据库删除。
对不起,我的字让你误会了。 |
|
|
|
|
|
|
|
发表于 8-9-2006 12:26 PM
|
显示全部楼层
SELECT Distinct(*)
FROM A |
|
|
|
|
|
|
|
楼主 |
发表于 8-9-2006 01:22 PM
|
显示全部楼层
原帖由 lEkiss 于 8-9-2006 12:26 PM 发表
SELECT Distinct(*)
FROM A
distinct 是只可以選一個field,我要的是整个row.
谢谢你的帮忙,不过我的问题已经解决了。 |
|
|
|
|
|
|
| |
本周最热论坛帖子
|