2016-10-20 8 views
0

MySQLデータベースにDateTimeを格納するカラムがあります。私は現在の日に日付部分(時間ではなく)を比較したいと思います。私はPHPを使い始めたばかりなので、どのような方法を使うのかよく分かりません。
PHPでDateTimeカラムをフォーマットする

$today=date("Y-m-d"); 
$sql="SELECT journey_id FROM tbl_journeys WHERE identity='$driver_id' AND DATE_FORMAT(`date`, '%Y %m %d')='$today'"; 

私はこの方法を試してみましたが、それは働いていません。声明では、dateは、年月日にのみ調整する必要があるテーブルの列です

+1

は、なぜ今日のMySQLの機能を使わないのでしょうか? 'AND DATE(date)= TODAY()' – Barmar

+0

他の方法で日付部分を反転します。列ではなく$ today変数をフォーマットします。 – Farkie

+1

'$ today'は日付の部分の間に' -'を含みますが、 'DATE_FORMAT()'はそれらの間にスペースを入れます。あなたは彼らがどのように平等になることを期待していますか? – Barmar

答えて

3

2つの形式で年、月、日の間で異なる文字を使用しています。

$today=date("Y-m-d"); 

DATE_FORMAT(`date`, '%Y %m %d') 

は、それらの間にスペースを入れながら、それらの間にハイフンを置きます。

これらのうちの1つを他と一致するように変更します。

DATE_FORMAT(`date`, '%Y-%m-%d') 

それともは、MySQLでそれをすべて行うだけでできます。

$sql="SELECT journey_id FROM tbl_journeys 
     WHERE identity='$driver_id' AND DATE(`date`) = TODAY()"; 
+0

ダッシュを追加してサーバを正しく設定した後、 – Manny265

関連する問題