2012-06-11 49 views
2

我想構建一個可以根據條件命名結果的SELECT語句。爲了更好地解釋我的嘗試,我構建了以下無效/非工作聲明。如何將以下SELECT語句改爲實際爲我的原因工作的SELECT語句。謝謝!MYSQL - SELECT語句,可以根據條件命名結果

SELECT 
    CASE 
    WHEN dayStart LIKE '2012-06-11%' THEN UNIX_TIMESTAMP(dayStart) as today 
    WHEN dayStart LIKE '2012-06-10%' THEN UNIX_TIMESTAMP(dayStart) as yest 
    WHEN dayStart LIKE '2012-06-12%' THEN UNIX_TIMESTAMP(dayStart) as tomor 
    END 
FROM dayBook 
WHERE userID = 1 

回答

2

爲什麼不只是返回兩列,一列告訴你日期,另一列告訴你它是今天,昨天還是明天?

SELECT 
    UNIX_TIMESTAMP(dayStart) as yourDate 
, CASE 
    WHEN dayStart LIKE '2012-06-11%' THEN 'today' 
    WHEN dayStart LIKE '2012-06-10%' THEN 'yest' 
    WHEN dayStart LIKE '2012-06-12%' THEN 'tomor' 
    END as dayType 
FROM dayBook 
WHERE userID = 1 
0

您需要使用動態SQL。

0

我很困惑你的問題。如果您想要更改UNIX_TIMESTAMP的值您可以執行UPDATE daybook SET UNIX_TIMESTAMP(dayStart)='今天'WHERE dayStart ='2012-06-11%',併爲其他人執行相同的操作。

相關問題