2011-12-06 51 views
1

我想查詢mysql中的數據。問題是列是datetime(dpost),我會在where子句中使用一個日期。查詢數據在mysql中使用日期時間列中的日期

SELECT * FROM `uid1000_qposts` WHERE `dpost`="2011-12-06" 

此查詢不會返回任何結果。有沒有任何可能的方式,我可以查詢數據使用日期對日期時間列?

感謝

回答

1

試試這個:

SELECT * FROM `uid1000_qposts` WHERE DATE_FORMAT(dpost,'%Y-%m-%d')='2011-12-06' 
1
WHERE dpost between "2011-12-06 00:00:00" and "2011-12-06 23:59:59" 

另一種可能性是使用

DATE_FORMAT(dpost,'%Y-%m-%d')="2011-12-06" 

但不推薦,
因爲它不會就任何指數使用(即使有)

2
SELECT * FROM `uid1000_qposts` WHERE date(`dpost`) = '2011-12-06' 
+0

工作就像一個魅力感謝^ _ ^ –

1
SELECT * FROM `uid1000_qposts` WHERE date(`dpost`) = '2011-12-06' 
相關問題