MySQL データベースでは、作成日が指定された日時範囲内にあるレコードの数を取得できます。さまざまな方法を使用して達成されます。一般的なアプローチの 1 つは、WHERE 句の比較ステートメントを利用します。 datetime データ型の「created」列を持つテーブルがあり、「今日の午前 4 時 30 分」から「現在の日時」までに作成されたレコードをカウントしたいとします。
これを実現するには、次のようにします。次のクエリを使用します:
SELECT count(*) FROM `table` WHERE created_at > '2023-03-08 04:30:00' AND created_at <= '2023-03-08 07:42:50';
このクエリでは、'2023-03-08 04:30:00' は日付/時刻範囲の下限を表し、'2023-03-08 07:42:50' は日付/時刻範囲の上限を表します。これらの値は要件に応じて調整できます。
または、以下に示すように WHERE 句で BETWEEN 演算子を使用することもできます。
SELECT count(*) FROM `table` WHERE created_at BETWEEN '2023-03-08 04:30:00' AND '2023-03-08 07:42:50';
この場合、BETWEEN 演算子は次のことを保証します。作成日が指定された範囲内にあるレコードのみがカウントに含まれます。
現在の日付と時刻を動的に取得するには、範囲の下限と上限を設定するには、MySQL の CURDATE() 関数と NOW() 関数を利用できます。以下に例を示します。
SELECT count(*) FROM `table` WHERE created_at > CURDATE() AND created_at < NOW();
このクエリは、今日の日付と現在時刻の間に作成されたレコードをカウントします。
以上がMySQL で 2 つの日時間のレコード数を取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。