例
select distinct 字段1 from aselect top 1 * from a where 字段2=字段1 order by 时间字段3 desc大家帮忙看看,能否把2条语句合为1条语句
select distinct 字段1 from aselect top 1 * from a where 字段2=字段1 order by 时间字段3 desc大家帮忙看看,能否把2条语句合为1条语句
调试欢乐多
distinct 是去重复的.
top 1 是取 order by 时间字段3 desc 第一个的.
你想要达到什么样的目的呢.
每个条件有多条记录,取时间最先的一条即可怎样才能循环起来大家帮忙看看,能否把2条语句合为1条语句
select top 1 *
from a
where 字段1 in (select distinct 字段1 from a)
order by 时间字段3 desc
from a as A
where no exists (select 1 from a as AA where A.字段1 = AA.字段1 and A.时间字段3>AA.时间字段3)
while exists(select 1 from #a)
begin
select top 1 * from a where 字段2=字段1 order by 时间字段3 desc
delete top 1 from #a
end
例数据
id 字段1 时间字段2
1 1 2012-11-11
2 1 2012-11-10
3 2 2012-11-11
4 2 2012-11-10
5 2 2012-11-16
……
结果
id 字段1 时间字段2
1 1 2012-11-11
5 2 2012-11-16
……
不知道我描述是否清楚