1

以下は、日付(より大きい)の違いに従って結果をフィルタリングしようとしている私のSQLクエリです。SQL関数"Date(FROM_UNIXTIME(i_last_updated))"は日付を正常に返しますが、次のクエリはwhere句のチェックに従って結果をフィルタリングしていません。私のSQLクエリに何か問題があり、それを修正するにはどうすればよいか教えてください。ありがとうございました

注:「単純なif / elseを使用して正常に実行しましたが、SQLクエリを使用して実行する方法はありますか?」

$d= "2012-12-25"

$sql2 = "SELECT attendees FROM event_attendees where Date(FROM_UNIXTIME(i_last_updated)) > $d";
4

3 に答える 3

1

'日付変数の前後を見逃しました:

$sql2 = "SELECT attendees FROM event_attendees where Date(FROM_UNIXTIME(i_last_updated)) > '$d'";
于 2012-05-27T15:55:05.970 に答える
0

MySQL関数を検索します。これにより、とdatediffの結果を比較できます。結果の符号をテストします。FROM_UNIXTIME()$d

于 2012-05-27T15:53:17.287 に答える
0

MySQLのDATEDIFF関数を使用して、2つの日付の違いを見つけることができます。

また

ただし、私には、i_last_updated各行を変換する代わりに、 $dUNIXタイムスタンプに変換する方がよいように思われます。これは、MySQLのUNIX_TIMESTAMP関数を使用して行うことができます。

于 2012-05-27T16:02:32.237 に答える