日付があるMySqlサーバーからエントリを取得しようとしています> date_begin and < date_end
私の問題は、テーブルの列 " date
" が に設定されてVARCHAR
おり、それを比較している文字列も<input type="text"/>
mysql テーブルとテキスト ボックスの日付形式 (文字列 / varchar として) は次のようになります。DD.MM.YYYY
私の問題は、もしそうなら
(phpコード)
$query = "SELECT * FROM table WHERE date>='" . $dateBegin . "' AND date<='" . $dateEnd . "'";
結果は完全にランダムになります。
なぜこれが起こっているのかはわかっているので、質問は次のとおりです。これを比較して正しい結果を得るにはどうすればよいですか?
助けてくれるすべての人に感謝します
アップデート :
今、私はこの解決策を試しましたが、うまくいきません。
$query = "SELECT * FROM artikel WHERE STR_TO_DATE(datum, '%d.%m.%Y')>=STR_TO_DATE('" . $_REQUEST['dateTo'] . "', '%d.%m.%Y')" . "' AND STR_TO_DATE(datum, '%d.%m.%Y')<=STR_TO_DATE('" . $_REQUEST['dateTo'] . "', '%d.%m.%Y')";
$_REQUEST['dateFrom']
と$_REQUEST['dateTo']
は 2 つのテキストボックスから来ており、入力はこのような文字列です"05.06.2005"
。
db-table 'artikel' (記事のドイツ語) 列 'datum' (日付のドイツ語) の値は、同じ形式 ( "05.06.2005" ) の VARCHAR です。