我想從我的數據庫中提取數據,並通過使用UNIX_TIMESTAMP
組織DATE
,但它似乎無法正常工作。這只是我失敗的嘗試之一。我遇到的問題是我試圖將表中的Field
轉換爲UnixTimeStamp,但它似乎不起作用。此查詢的目的是爲了將所有未來生日都拉出來,如果生日已過,我們在hasItPassed
列中給它一個'0'值,如果不是,我們給它一個'1'值。我試圖組織這張桌子的方式是列出所有即將到來的生日(在最上方有最近的生日),並且已經在列表底部通過了所有生日。MYSQL UNIX_TIMESTAMP不轉換
(EXAMPLE) bDay.date format --> '10/07/2013'
所以我的問題是,沒有人知道的日期字段中您的數據庫轉換爲unixTime格式的最好方法?在這個例子中發生的是在我的字段hasItPassed
中,當事實上有些日期沒有通過時(所以有些應該有1
而不是0
),所有內容都變成0
。因此,我知道我遇到了轉換問題。
SELECT bDay.id, bDay.userid, bDay.summary,
bDay.time_create, bDay.Address, bDay.date, bDay.time,
CASE WHEN UNIX_TIMESTAMP(bDay.date) >= NOW()
THEN '1'
ELSE '0'
END AS hasItPassed
FROM
BirthdayTable
WHERE
ORDER BY hasItPassed DESC ,
CASE WHEN hasItPassed =1
THEN date
END ASC ,
CASE WHEN hasItPassed =0
THEN date
END DESC
如果有任何困惑,請讓我知道,我會重新格式化問題。謝謝你!
爲什麼你關心UNIX時間戳?如果你已經有日期字段,這樣會更好。 –