Date      Stock Price 
2010-1-1  A123  10
2010-2-1  A123  11
2010-3-1  A123  12
查询出
2010-3-1 A123 12  

解决方案 »

  1.   

     select top 1 * from 表 order by date desc
      

  2.   

    select top 1 * from tb order by date desc
      

  3.   


    select *
    from tb
    where convert(varchar,[date]) + stock in (select convert(varchar,max([date])) + stock from tb group by stock)
      

  4.   


    select top 1 * from tb order by date desc
      

  5.   

    如果最近一次只有一笔.
    select top 1 * from tb order by date desc如果最近一次有多笔.
    select * from tb where date = (select top 1 date from tb order by date desc)
      

  6.   


    with cte as
    (
        select *,row_number() over (partition by stock order by [date] desc)rn
        from tb
    )select *
    from cte
    where rn = 1
      

  7.   

     select * from tb a where
     not exists(select * from tb b where b.物料ID = a.物料ID and b.[Date] > a.[date])
      

  8.   

    select top 1 * from tb where Stock='A123' order by date desc