首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

急求一查询语句。感谢。该怎么解决

2012-02-01 
急求一查询语句。。.。感谢。。现有表:idzd1zd2zd3111122233321112224443555222333411122233356667778886555222

急求一查询语句。。.。感谢。。
现有表:
id     zd1     zd2     zd3
1       111     222     333
2       111     222     444
3       555     222     333
4       111     222     333
5       666     777     888
6       555     222     333
结果:
id     zd1     zd2     zd3
1       111     222     333
2       111     222     444
3       555     222     333
5       666     777     888

需求:查询出三个字段都唯一的第一条记录,去除重复的。我知道一个字段是distinct,多个可以用group   by   ,但没写出来。,急求各位帮忙。。感谢

[解决办法]
select min(id)id,zd1,zd2,zd3 from tb group by zd1,zd2,zd3
[解决办法]

select id=min(id),zd1,zd2,zd3
from 表
group by zd1,zd2,zd3
[解决办法]
--如果是要刪除重復數據
Delete From 表 Where id Not In (Select Min(id) From 表 Group By zd1, zd2, zd3)
[解决办法]
select min(id) as id,zd1,zd2,zd3 from tb group by zd1,zd2,zd3
[解决办法]
create table tb(id int,zd1 int, zd2 int,zd3 int)
insert tb
select 1 , 111 ,222 ,333
union select 2 , 111, 222 ,444
union select 3 , 555 , 222 , 333
union select 4 , 111 ,222 , 333
union select 5 , 666 , 777 ,888
union select 6 , 555 ,222, 333

select id=min(id),zd1,zd2,zd3
from tb
group by zd1,zd2,zd3


drop table tb
/*
id zd1 zd2 zd3
----------- ----------- ----------- -----------
1 111 222 333
2 111 222 444
3 555 222 333
5 666 777 888

(4 row(s) affected)
*/

热点排行