2013-09-30 246 views
1

我目前在我的訪問數據庫中有一個查詢,它返回下列值。如果日期不足,則給日期列「今天」日期

ItemCode ComponentReadyDate 
5109123 
5113014 
5113035  23/09/2013 
5109121  13/09/2013 
5109122  13/09/2013 
5107000  09/09/2013 
5107000  30/09/2013 
5109088  18/09/2013 
5109092  24/09/2013 
5109092  28/10/2013 
5109110 
5109110  31/07/2013 
5101002A  
5102412  02/10/2013 
5102412  03/09/2013 

有沒有辦法這樣,如果ComponentReadyDate是今天的日期,它改爲今天一天的例子,我可以修改此查詢;

ItemCode ComponentReadyDate 
    5109123  30/09/2013 
    5113014  30/09/2013 
    5113035  30/09/2013 
    5109121  30/09/2013 
    5109122  30/09/2013 
    5107000  30/09/2013 
    5107000  30/09/2013 
    5109088  30/09/2013 
    5109092  30/09/2013 
    5109092  28/10/2013 
    5109110  30/09/2013 
    5109110  30/09/2013 
    5101002A  30/09/2013 
    5102412  02/10/2013 
    5102412  30/09/2013 

回答

2

該查詢似乎這樣的伎倆:

SELECT 
    ItemCode, 
    Switch(IsNull(oldReadyDate),Date(),oldReadyDate<Date(),Date(),True,oldReadyDate) AS ComponentReadyDate 
FROM 
    (
     SELECT 
      ItemCode, 
      ComponentReadyDate AS oldReadyDate 
     FROM 
      Components 
    )