2014-01-05 43 views
0

我有一個表是什麼樣子說:排序按日期,但在第一次添加了重要的MySQL中

ID | title | author | timestamp | livetime | special 

我的目標是選擇所有從表,其中livetime比當前時間戳,並責令按時間戳降序較大但記錄哪裏「特殊」是真實的必須先在(當然,也是有序的)。僅用MySQL可以做到這一點?

我的SQL查詢看起來是:

SELECT * FROM ads WHERE livetime > UNIX_TIMESTAMP() ORDER BY timestamp DESC 

回答

3

是的,你可以通過兩列進行排序。 true的值爲1,false爲0,因此您需要按降序排序。

SELECT * FROM ads WHERE livetime > UNIX_TIMESTAMP() ORDER BY special DESC, timestamp DESC 
1
SELECT * FROM ads 
WHERE livetime > UNIX_TIMESTAMP() 
ORDER BY special <> 1, 
     timestamp DESC 
1

試試這個。

SELECT * FROM ads WHERE livetime > UNIX_TIMESTAMP() ORDER BY special, timestamp DESC