DATE_SUB作用实例如下:
SQL查询今天和昨天数据,SQL查询近一个月数据,SQL查询近三天数据,SQL查询一周数据等
(具体例子,在下方)
DATE_SUB() 函数
SQL中,DATE_SUB()
是一个函数,用于从当前日期中减去指定的时间间隔。它的语法如下:
DATE_SUB(date, INTERVAL unit value)
其中,date
是要进行调整的日期,unit
是要减去的时间间隔单位(例如“YEAR”、“MONTH”、“DAY”等),value
是要减去的该单位数量。
例如,要从当前日期中减去一个月,可以使用以下语句:
DATE_SUB(CURDATE(), INTERVAL 1 MONTH)
例子:
1、SQL语句,根据create_time查询近一个月数据 :
SELECT * FROM my_table
WHERE create_time >= DATE_SUB(CURDATE(), INTERVAL 1 MONTH);
语句中,my_table
是要查询的表的名称,create_time
是表中存储创建日期的列的名称。该语句使用DATE_SUB()
函数和CURDATE()
函数来计算一个月前的日期,然后将其与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');