良い日、私は、MySQLデータベースからのエントリが少なくとも10日以上経過しているかどうかをチェックする小さなスクリプトを開発しています。 テーブルにはタイムスタンプフィールドがあります(使用したいものですが、必要に応じて変更できます)。MySQLは10日以上のすべてのエントリを選択します
SELECT *
FROM entries
WHERE tag='$tag'
AND DATE(last_update) > DATE_SUB(CURDATE(), INTERVAL 10 DAY)
が、私はので、多分、私は何かを勘違いしてる10日より、いくつかの選択項目を「若い」を発見しています: は、実際に私は、このSQL文字列を使用しています。 これは正しい方法ですか、それともPHP経由でチェックする方が良いですか(MySQLクエリではなく)?
ありがとうございます。
例を投稿できますか? 'CURDATE()= X'や' DATE(last_update)= Y'のように返される悪いYの例は何でしょうか? – apokryfos
私はこれを知ることができません。last_updateフィールドが毎回「更新」されているので、間違った動作をする唯一の手掛かりは、毎回増分される「ポストカウント」フィールドがあり、数が増えすぎる –
DBシェルでクエリをテストすると便利です。通常はデータを変更しません。 – apokryfos