MySql取得日期(前一天、某一天)(前一月第一天到最后一天)
取得当天:
mysql> SELECT curdate();
+------------+
| curdate() |
+------------+
| 2018-11-24 |
+------------+
取得当前日期:
mysql> select now();
+---------------------+
| now() |
+---------------------+
| 2018-11-24 13:41:51 |
+---------------------+
取得前一天:
mysql> select date_sub(curdate(),interval 1 day);
+------------------------------------+
| date_sub(curdate(),interval 1 day) |
+------------------------------------+
| 2018-11-23 |
+------------------------------------+
括号中为当天时间的前一天,如果统计前几天就将括号中的’1’改成相应的天数。如果要算月或年,直接将day改为month或year即可
SELECT YEAR(DATE_SUB(CURDATE(),INTERVAL 1 DAY));
+------------------------------------------+
| YEAR(DATE_SUB(CURDATE(),INTERVAL 1 DAY)) |
+------------------------------------------+
| 2018 |
+------------------------------------------+
select date_format(curdate(),'%e'); # 当月的第几天【几号】 【如:24】
select subdate(curdate(),date_format(curdate(),'%e')); # 前一月最后一天 【如:2018-10-31】
SELECT subdate(date_sub(curdate(),interval 1 month), date_format(date_sub(curdate(),interval 1 month),'%e')-1); #前一月第一天【如:2018-10-01】