MySQLのDATEDIFFを使ったフィルタリング方法


  1. 特定の日数以内のデータを抽出する: 例えば、3日以内のデータを抽出したい場合は、次のクエリを使用します。

    SELECT * FROM テーブル名
    WHERE DATEDIFF(NOW(), 日付カラム名) <= 3;

    上記のクエリでは、DATEDIFF関数を使用して現在の日付と比較対象の日付の差を計算し、その差が3以下のデータを抽出します。

  2. 特定の日数以上のデータを抽出する: 例えば、7日以上経過したデータを抽出したい場合は、次のクエリを使用します。

    SELECT * FROM テーブル名
    WHERE DATEDIFF(NOW(), 日付カラム名) >= 7;

    上記のクエリでは、DATEDIFF関数を使用して現在の日付と比較対象の日付の差を計算し、その差が7以上のデータを抽出します。

  3. 特定の日数の範囲内のデータを抽出する: 例えば、10日から20日までのデータを抽出したい場合は、次のクエリを使用します。

    SELECT * FROM テーブル名
    WHERE DATEDIFF(NOW(), 日付カラム名) BETWEEN 10 AND 20;

    上記のクエリでは、DATEDIFF関数を使用して現在の日付と比較対象の日付の差を計算し、その差が10から20の範囲内のデータを抽出します。

以上がMySQLのDATEDIFFを使用したフィルタリングの基本的な方法です。必要に応じて、クエリをカスタマイズして条件に合わせたフィルタリングを行ってください。