mysql8新特性CTE递归实现30天时间日期
WITH RECURSIVE dates (date) AS ( SELECT DATE_SUB(CURDATE(), INTERVAL 30 DAY) FROM DUAL UNION ALL SELECT date + INTERVAL 1 DAY FROM dates WHERE date + INTERVAL 1 DAY <= (SELECT CURDATE() from DUAL) ) SELECT * FROM dates ORDER BY dates.date desc ;
SELECT DATE_FORMAT(DATE_SUB(NOW(), INTERVAL ac DAY), '%Y-%m-%d') AS DATE FROM ( SELECT @num:=@num+1 AS ac FROM (SELECT 1 UNION SELECT 2 UNION SELECT 3 UNION SELECT 4 UNION SELECT 5) num1, (SELECT 1 UNION SELECT 2 UNION SELECT 3 UNION SELECT 4 UNION SELECT 5 UNION SELECT 6 ) num2, (SELECT @num:=0) num ) ad

https://dev.mysql.com/doc/refman/8.0/en/with.html#common-table-expressions
时间仓促,如有错误欢迎指出,欢迎在评论区讨论,如对您有帮助还请点个推荐、关注支持一下
作者:博客园 - 学佳技术
出处:https://www.cnblogs.com/zhouxuejia/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须在文章页面给出原文链接,否则保留追究法律责任的权利。
若内容有侵犯您权益的地方,请公告栏处联系本人,本人定积极配合处理解决。

浙公网安备 33010602011771号