select * from ChangeFeeSet tem where [Time]=(select top 1 [time] from ChangeFeeSet where CardId=tem.CardId)

解决方案 »

  1.   

    取出后的结果的CardId不一样,怎么是取同一CardId的最近的记录
      

  2.   

    select * from ChangeFeeSet tem where [Time]=(select max([time]) from ChangeFeeSet where CardId=tem.CardId)
      

  3.   

    Try:
    Select a.* from ChangeFeeSet a
    Join
    (Select CardId,Max(Time) as Time from ChangeFeeSet) b
    on a.CardId = b.CardId and a.time = b.Time
      

  4.   

    select * from ChangeFeeSet where Time in (select max(Time) from t group by Time) as a
      

  5.   

    select * from ChangeFeeSet where Time in (select max(Time) from ChangeFeeSet group by Time) as a
      

  6.   

    select * from ChangeFeeSet tem where [Time]=(select min([time]) from 
    ChangeFeeSet where CardId=tem.CardId)
      

  7.   

    select * from ChangeFeeSet tmp where not exists (select 1 from ChangeFeeSet where
    tmp.[time]<[time] where CardId=tmp.CardId)
      

  8.   

    select  *  from ChangeFeeSet  group by  CardID  haveing Time=Max(Time)