2011-12-06 18 views
2

日付範囲の間にある行を選択したい場合は、次のクエリを試しましたが、動作しませんでした。日付範囲内の行を選択する方法

SELECT * FROM tbl WHERE DATE_FORMAT(date_col, '%2011-%c-%e') BETWEEN '2011-11-28' AND '2011-12-5' 

BETWEENキーワードが日付のように動作しないようです。どうすれば結果が得られますか?おかげ

+0

を使用すると仮定すると、文字列を比較? – ajreal

答えて

4
 
SELECT * FROM tbl WHERE DATE_FORMAT(date_col, '%Y-%m-%d') BETWEEN '2011-11-28' AND '2011-12-5' 
9

はあなたが日付を比較したい場合はDATE_FORMATを使用する必要はありません。

SELECT * 
FROM tbl 
WHERE DATE(date_col) BETWEEN '2011-11-28' AND '2011-12-05' 

あなたのコードはDATE_COLのデータ型が何であるかをあなたがDATE_FORMAT(date_col, '%Y-%c-%e')

関連する問題