MySQLコマンドやSQL文に関する各種メモ書き

MySQLで日付を指定してデータをSELECTする

日付(日付のみ。)を指定してデータをSELECTするには以下のように WHERE句において不等号で指定する。

例1:2018年9月8日の00:00 より前(昔)のデータを選択する

SELECT 
	test_id,
	test_name,
	test_date 
FROM
	test_dt
WHERE
	search_date < '2018-09-08';

例2:2018年9月1日〜9月4日のデータを選択する

SELECT 
	test_id,
	test_name,
	test_date 
FROM
	test_dt
WHERE
	search_date BETWEEN '2018-09-01' AND '2006-09-05' ;

例3:今日より5日以上前(昔)のデータを選択する

SELECT 
	test_id,
	test_name,
	test_date 
FROM
	test_dt
WHERE
	search_date < DATE_SUB( CURDATE(),INTERVAL 5 DAY )

例4:現在時刻から1時間以内に更新した( modified_date が 1時間以内 )データを選択する

SELECT * , DATE_SUB( CURDATE(),INTERVAL 1 MINUTE ) as DATE_A
FROM test_dt
WHERE modified_date > DATE_SUB( NOW(),INTERVAL 1 HOUR )

5日後の場合は DATE_ADD()を使用する

● MySQLで日時(日付と時刻)を指定してデータをSELECTする

CURDATE() の 代わりに NOW() を使用します。

関連エントリー

No.317
12/26 20:21

edit

日付