私はcodeigniterとmysql dbに取り組んでいます。私は最近のデータを日付ごとに表示する必要がある問題に取り組みました。MYSQLの日付範囲のクエリが異常な動作
私はこのクエリの出力は空の配列 array();
手動iは、私はそのtournament_end_date >= $todays_date
マイクエリ
$today = date("d/m/Y");
$this->db->select('*');
$this->db->from('tbl_tournament');
$this->db->where('is_deleted', FALSE);
$this->db->where('tournament_end_date_time >=', $today);
$this->db->order_by('tournament_start_date_time');
$query = $this->db->get();
return $query->result_array();
トーナメントデータをフェッチするつもりテーブル名tbl_tournamentを持っていますデータベース内のtournament_end_date_time = 01/04/2018
を変更し、$this->db->where('tournament_end_date_time >=', '01/04/2017');
という質問が表示されます。しかし、私は$this->db->where('tournament_end_date_time >=', '31/12/2017');
としてクエリの日付を変更すると、私は空の配列を取得します。私は事前にデータ型tournament_end_date_time
感謝としてvarchar型を使用しているMySQLデータベースで
。
なぜ、MySQLのネイティブデータ型またはdatetimeデータ型ではなく、フォーマットされた日付文字列を格納するためにvarcharを使用していますか?正しいデータ型を使用すると、すべての比較が正しく動作します –