不会说,看语句说话select [TT_Price_SelUPrice]
      ,TT_Price_FromDate
      ,[TT_Price_SelUPrice]
      from dbo.TT_ItemMas as mas inner join TT_Price as price on 
      mas.TT_ItemMas_ItemID=price.TT_Price_ItemID 
      where 1=1 and  TT_Price_ItemID='BNBN051101' or TT_Price_ItemID='JBZ07001-60'  有的TT_Price_ItemID有三个价格,有的只有一个,我想通过TT_Price_FromDate删选出最近更新的数据 该如何做?
 where条件是从页面传过来的
感谢各位老大!

解决方案 »

  1.   

    select [TT_Price_SelUPrice]
      ,TT_Price_FromDate
      ,[TT_Price_SelUPrice]
      from dbo.TT_ItemMas as mas inner join TT_Price as price on  
      mas.TT_ItemMas_ItemID=price.TT_Price_ItemID  
      where 1=1 and TT_Price_ItemID='BNBN051101' or TT_Price_ItemID='JBZ07001-60' 
     and TT_Price_FromDate=(select max(TT_Price_FromDate) 
           from TT_Price where TT_Price_ItemID=price.TT_Price_ItemID )
      

  2.   


    select [TT_Price_SelUPrice]
      ,TT_Price_FromDate
      ,[TT_Price_SelUPrice]
      from dbo.TT_ItemMas as mas inner join TT_Price as price on  
      mas.TT_ItemMas_ItemID=price.TT_Price_ItemID  
      where 1=1 and TT_Price_ItemID='BNBN051101' or TT_Price_ItemID='JBZ07001-60' 
     and price.自增id=(select top 1 自增id
           from TT_Price where TT_Price_ItemID=price.TT_Price_ItemID order by 日期 desc)
      

  3.   


    select [TT_Price_SelUPrice]
      ,TT_Price_FromDate
      ,[TT_Price_SelUPrice]
      from dbo.TT_ItemMas as mas inner join TT_Price as price on  
      mas.TT_ItemMas_ItemID=price.TT_Price_ItemID  
      where 1=1 and TT_Price_ItemID='BNBN051101' or TT_Price_ItemID='JBZ07001-60' 
     and not exists (select 1
           from TT_Price where TT_Price_ItemID=price.TT_Price_ItemID and 日期 > price.日期)
      

  4.   

    ;with f as
    (
    select [TT_Price_SelUPrice]
      ,TT_Price_FromDate
      ,[TT_Price_SelUPrice]
      from dbo.TT_ItemMas as mas inner join TT_Price as price on  
      mas.TT_ItemMas_ItemID=price.TT_Price_ItemID  
      where 1=1 and TT_Price_ItemID='BNBN051101' or TT_Price_ItemID='JBZ07001-60'  
    )
    select * from f t where TT_Price_FromDate=(select max(TT_Price_FromDate) from f where TT_Price_SelUPrice=t.TT_Price_SelUPrice)
      

  5.   

    编码              价格            时间
    BNBN051101     769.00       2006-09-30 00:00:00.000
    BNBN051101     699.00       2007-03-13 00:00:00.000
    BNBN051101     759.00       2009-02-06 00:00:00.000
    BNBN051101     759.00       2009-02-06 00:00:00.000
    BNBN051101     699.00       2007-03-13 00:00:00.000
    BNBN051101     769.00       2006-09-30 00:00:00.000
    BNBN051101     769.00       2006-09-30 00:00:00.000
    就这仨列
      

  6.   


    select [TT_Price_SelUPrice]
      ,TT_Price_FromDate
      ,[TT_Price_SelUPrice]
      from dbo.TT_ItemMas as mas 
          inner join (select *,rid=row_number() over (partition by TT_Price_ItemID order by 日期 desc)
                      from TT_Price) as price on  
      mas.TT_ItemMas_ItemID=price.TT_Price_ItemID  
      where 1=1 and TT_Price_ItemID='BNBN051101' or TT_Price_ItemID='JBZ07001-60'
         and price.rid = 1
      

  7.   

    泪奔~~o(>_<)o ~~ 结果还是一样的
      

  8.   


    select [TT_Price_SelUPrice]
      ,TT_Price_FromDate
      ,[TT_Price_SelUPrice]
      from dbo.TT_ItemMas as mas 
          inner join (select *,rid=row_number() over (partition by TT_Price_ItemID order by 日期 desc)
                      from TT_Price) as price on  
      mas.TT_ItemMas_ItemID=price.TT_Price_ItemID  
      where 1=1 and (TT_Price_ItemID='BNBN051101' or TT_Price_ItemID='JBZ07001-60')
         and price.rid = 1