问题描述
- SQL id和no相同的有多条记录时,只取其中的一条,要怎么写查询语句
-
declare @A table (
id nvarchar(8),
[no] nvarchar(8),
a_string1 nvarchar(8),
a_string2 nvarchar(8)
);
insert into @A values('0001','0001','','');
insert into @A values('0001','0001','1111','1111');
insert into @A values('0001','0002','0000','0000');
insert into @A values('0001','0002','1111','1111');
insert into @A values('0001','0003','1111','1111');
insert into @A values('0001','0003','','');
insert into @A values('0001','0004','','');
insert into @A values('0001','0004','1111','1111');
解决方案
是随机取一条,还是只要取到一条数据就行?
SELECT TOP 1 column FROM A
ORDER BY NEWID()
解决方案二:
去重函数distinct
解决方案三:
去重函数distinct
解决方案四:
这个要用到聚合group by
解决方案五:
select top 1 * from A where id=no
这样不行吗?
时间: 2024-10-17 23:57:06