有表1,结构如下:
联系ID    客户ID    联系人     联系时间      联系内容
1          1         张三      2008-07-02   aaaa
2         1         admin    2008-07-03   bbbbb
3         1         李四      2008-07-01   cccc
4         2         许工       2008-07-05   ddd
5         2         张三      2008-07-08    ccc
求客户最近一次联系时间和联系人,结果如下
客户ID    联系人    联系时间
1         admin   2008-07-03
2         张三      2008-07-08谢谢

解决方案 »

  1.   

    select 客户ID,联系人,联系时间 from 表1 t where not exists(select 1 from 表1 where id=t.id and left(联系时间,10)>left(t.联系时间,10))
      

  2.   

    select 客户ID,联系人,联系时间 from 表1 a
    where not exists(select 1 from 表1 where 客户ID=a.客户ID and 联系时间>a.联系时间)
      

  3.   

    用Group by 有没有办法实现
      

  4.   

    日期不重复,group by后取最大日期也可以!
      

  5.   

    select 表1.客户ID,联系人,表1.联系时间 from 表1 inner join 
    (select 客户ID,max(联系时间) as 联系时间 from 表1 group by 客户ID) a on 表1.客户ID=a.客户ID and 表1.联系时间=a.联系时间
      

  6.   

    select 客户ID,联系人,联系时间 from Tbl a
    where not exists(select 1 from Tbl where 客户ID=a.客户ID and 联系时间>a.联系时间)