日期:2014-05-16  浏览次数:20900 次

请教一个sql?
如表1:

ID ZD1 ZD2 ZD3 ZD4
1 苹果 5 张三 2000-8-3
2 苹果 2 张三 2000-9-4
3 香蕉 3 李四 2000-6-4
4 桔子 6 李四 2000-7-4
5 西瓜 6 王五 2001-2-4
6 苹果 6 王五 2001-2-5
7 西瓜 6 王五 2001-2-4
8 香蕉 3 李四 2000-9-6
...

select 以下结果的sql?
1 苹果 5 张三 2000-8-3
3 香蕉 3 李四 2000-6-4
4 桔子 6 李四 2000-7-4
5 西瓜 6 王五 2001-2-4

zd1 不重复,且显示其第一次出现的记录



 

------解决方案--------------------
select a.* from tt a inner join
(select zd1,min(zd4) as mi from tt group by zd1) b
on a.zd1=b.zd1 and a.zd3=b.mi
------解决方案--------------------
SQL code
select *
from 表1 a
where not exists (select 1 from 表1 where ZD1=a.ZD1 and ZD4<a.ZD4)