SQL文 DATE_SUB関数

DATE_SUB 関数の例は次のとおりです。

今日と昨日のSQLクエリデータ、過去1ヶ月のSQLクエリデータ、過去3日間のSQLクエリデータ、 1週間のSQLクエリデータなど
(具体例は下記)

DATE_SUB() 函数
SQL では、DATE_SUB()現在の日付から指定された時間間隔を減算する関数です。その構文は次のとおりです。

	DATE_SUB(date, INTERVAL unit value)

ここでdate、 は調整する日付、unitは減算する時間間隔の単位 (「YEAR」、「MONTH」、「DAY」など)、 はvalue減算する単位の量です。

たとえば、現在の日付から 1 か月を減算するには、次のステートメントを使用できます。

	DATE_SUB(CURDATE(), INTERVAL 1 MONTH)

例:

1. create_time に従って過去 1 か月のデータをクエリする SQL ステートメント:

	SELECT * FROM my_table   
	WHERE create_time >= DATE_SUB(CURDATE(), INTERVAL 1 MONTH);

ステートメント内の、my_tableはクエリ対象のテーブルの名前であり、 はcreate_time作成日を格納するテーブル内の列の名前です。このステートメントは、DATE_SUB()複数の関数を使用してCURDATE()1 か月前の日付を計算し、それを create_time 列の値と比較して、一致するデータを取得します。

2. SQL ステートメント、create_time に従って今日と昨日をクエリします。

	SELECT * FROM my_table   
	WHERE DATE(create_time) IN (CURDATE(), CURDATE() - INTERVAL 1 DAY);

CURDATE()関数を使用して現在の日付を取得し、 を使用してCURDATE() - INTERVAL 1 DAY 昨日の日付を取得します。

3. SQL ステートメントでは、開始時刻と終了時刻に従って create_time クエリ データを判断します。

	//1
	SELECT * FROM my_table   
	WHERE create_time >= start_time AND create_time <= end_time;
	
	//前端组件只到年月日的话用下方
	//2 create_time 精确地2023-06-13 20:32:23, 
	// DATE('2023-06-13 20:32:23') 得到的是=> '2023-06-13'
	SELECT * FROM my_table   
	WHERE DATE(create_time) >= DATE('2023-06-13') AND DATE(create_time) <= DATE('2023-06-14');

おすすめ

転載: blog.csdn.net/mingketao/article/details/131210035