2016-06-21 2 views
-2

誰も私はあなたの連結を持っている余分な空白が問題を引き起こしていると考えているクエリMySQLのクエリの連結のエラー

$sql = "SELECT * FROM user_monsoon_offer WHERE DATE_ADD(start_date,INTERVAL 4 DAY) = ' ".$date." ' AND user_monsoon_offer.user_id NOT IN (SELECT user_id FROM transactions)"; 
+2

あなたの現在の結果は何ですか? – stenix

+0

'echo $ sql;'ここに貼り付けて – Strawberry

答えて

3

と間違っているものを私に伝えることができます。これを試してみてください:

$sql = "SELECT * FROM user_monsoon_offer 
     WHERE DATE_ADD(start_date,INTERVAL 4 DAY) = '$date' 
     AND user_monsoon_offer.user_id NOT IN (SELECT user_id FROM transactions)"; 

あなたの元WHERE句には、次のように見えた:

WHERE DATE_ADD(start_date,INTERVAL 4 DAY) = ' 2016-06-21 ' 

これが原因で余分なスペースで動作しません。

+0

$ dateを文字列として渡します –

+0

まだ動作していない空白を削除します –

+0

日付の形式は何ですか?ここにコメントとして貼り付けるか、元の質問を更新してください。 –

0

私はあなたのフィルタ条件で動的データの連結を探していると信じています。

SELECT * FROM user_monsoon_offer 
WHERE SUBDATE(start_date,4) = ' ".$date." ' 
    AND user_monsoon_offer.user_id NOT IN (SELECT user_id FROM transactions);