2012-04-03 2 views
0

登録日が4-22人のデータベーステーブルを検索したいと思います。私は月と従業員が年ません登録日を取得する必要があるため、SQLが間違っ判明しかしデータベースで検索すると失敗する

私のSQLは、この

function GetUsers($dreg) 
{ 
    $dt=(new DateTime($dreg))->format('Y-m-d'); 
    $result=$this->query("SELECT * FROM tablex WHERE dreg='$dt'"); 
    return ($this->getNumRows()>0)?$result:null; 
} 

のような類似したになります。

答えて

2

は、あなたが全体の日付の代わりにちょうど日と月を比較する必要があります。

function GetUsers($dreg) 
{ 
    $dt=(new DateTime($dreg))->format('m-d'); 
    $result=$this->query("SELECT * FROM tablex WHERE DATE_FORMAT(dreg, '%m-%d') = '$dt'"); 
    return ($this->getNumRows()>0)?$result:null; 
} 
+0

@Dustを、MySQLの日付書式文字列にエラーが発生した、更新されたコードを確認してください。 – bfavaretto

+0

ありがとう、あなたは私に機能と使用方法を教えて、残りは自分で修正しようとします。再度、感謝します。 –

0

日付の両側を文字列に変換して比較することができます。

関連する問題