を無視し、私は私のクエリでは、このビットがない:DATEDIFF()私はDebianの上<code>MYSQL 5.5.47</code>を使用していた時間
AND DATEDIFF(CURRENT_DATE(), shouts_stores.date) <= 7
は - AND DATEDIFF(NOW(), shouts_stores.date) <= 7
問題からそれを変更しましたか? Datediffは、私が読んだすべてのことによると、は時間部分を無視するとされています。
私は過去7日間の行を取得する必要がありますが、PHPの "投稿されたX秒/分/時間/日前"機能の時間要素を含むタイムスタンプが必要です。
ただし、行を取得するだけの場合は、最大7日間(または1週間前)からの投稿が必要です。ただし、転記時刻が現在よりも早ければ、8日までノックします。これはいくつかの混乱を引き起こします。誰もこれについて何か考えているのですか?
編集:例 これは、テーブルには次のようになります。
TLのDR。DATEDIFF()
は、datetime
の時間部分を無視する必要があります。
、必要に応じて
)は(NOWとCURRENT_DATE()を置き換えるあなたは例を追加することはできますか? – Alex
具体的な例が参考になります。ドキュメンテーションは、日付部分だけが考慮されているので、問題がどこにあるのかが分かります。 –
@Pekka面白いところです。私は両方の答えを使用して、両方とも働いた。それから私は自分のコードに戻り、それも働いた。問題は不具合(?)だったようだ。これは間違いなく他のどこにでも見つけられなかった理由を説明します。私はplesk-update後のいくつかの他の問題を持っていました。それが原因だったかもしれません。 – NoobishPro