查询编号为0099日期最大的最后一条记录
  编号             日期               字段1       字段2         ... 
  1000         2007-01-01           1                 a           ... 
  0099         2007-02-03           2                 b           ... 
  1000         2007-02-08           2                 c           ... 
  1001         2007-02-02           0                 c           ... 
  0099         2007-03-18           0                 l           ... 
  ...             ...                       .                 .           ... 得到: 
  编号             日期               字段1       字段2         ... 
  0099         2007-03-18           0                 l           ...

解决方案 »

  1.   


    select top 1 * from tb where 编号='0099' order by 日期 desc
      

  2.   

    select * from tb t
    where not exists(select 1 from tb where t.编号=编号 and t.日期<日期)
      

  3.   

    select top 1 * from tb where 编号='0099' order by 日期 desc
      

  4.   

    --查询编号='0099'
    select top 1 * from tb t where 编号 = '0099' order by 日期 desc--如果是所有编号
    select t.* from tb t where 日期 = (select max(日期) from tb where 编号 = t.编号)
    select t.* from tb t where not exists (select 1 from tb where 编号 = t.编号 and 日期 > t.日期)