MySQL 函数

1、CURDATE():返回当前的日期。

2、查询当前年月

SELECT DATE_FORMAT(CURDATE(),'%Y-%m') AS `year_month`

3、当前日期添加 1 个月

INTERVAL 1 MONTH

4、查询近6个月的月份

SELECT DATE_FORMAT(CURDATE(),'%Y-%m')AS `year_month`

UNION SELECT DATE_FORMAT((CURDATE()-INTERVAL 1 MONTH),'%Y-%m')AS `year_month`

UNION SELECT DATE_FORMAT((CURDATE()-INTERVAL 2 MONTH),'%Y-%m')AS `year_month`

UNION SELECT DATE_FORMAT((CURDATE()-INTERVAL 3 MONTH),'%Y-%m')AS` year_month`

UNION SELECT DATE_FORMAT((CURDATE()-INTERVAL 4 MONTH),'%Y-%m')AS` year_month`

UNION SELECT DATE_FORMAT((CURDATE()-INTERVAL 5 MONTH),'%Y-%m')AS` year_month`

5、查询近6个月发布的文章数

SELECT t1.`year_month`,count(t2.id) as total FROM

(

SELECT DATE_FORMAT(CURDATE(),'%Y-%m')AS `year_month`

UNION SELECT DATE_FORMAT((CURDATE()-INTERVAL 1 MONTH),'%Y-%m')AS `year_month`

UNION SELECT DATE_FORMAT((CURDATE()-INTERVAL 2 MONTH),'%Y-%m')AS `year_month`

UNION SELECT DATE_FORMAT((CURDATE()-INTERVAL 3 MONTH),'%Y-%m')AS` year_month`

UNION SELECT DATE_FORMAT((CURDATE()-INTERVAL 4 MONTH),'%Y-%m')AS` year_month`

UNION SELECT DATE_FORMAT((CURDATE()-INTERVAL 5 MONTH),'%Y-%m')AS` year_month`

)t1

LEFT JOIN mxg_article t2

ON t1.`year_month`= DATE_FORMAT(t2.create_date,'%Y-%m')

AND t2.`status`=2 AND t2.ispublic=1

GROUP BY t1.`year_month`;

相关推荐
惊起白鸽4501 小时前
MySQL全量,增量备份与恢复
数据库·mysql
暮雨疏桐2 小时前
MySQL SQL Mode及其说明
数据库·sql·mysql·sql mode
Tangcan-2 小时前
【MySQL】数据库基础
数据库·mysql
蔡蓝3 小时前
Mysql的索引,慢查询和数据库表的设计以及乐观锁和悲观锁
数据库·mysql
jstart千语3 小时前
【Redis】分布式锁的实现
数据库·redis·分布式
一把年纪学编程4 小时前
【牛马技巧】word统计每一段的字数接近“字数统计”
前端·数据库·word
极小狐4 小时前
极狐GitLab 通用软件包存储库功能介绍
java·数据库·c#·gitlab·maven
钢铁男儿4 小时前
C# 方法(可选参数)
数据库·mysql·c#
陆少枫5 小时前
MySQL基础关键_013_常用 DBA 命令
数据库·mysql
赵渝强老师5 小时前
【赵渝强老师】在PostgreSQL中使用file_fdw访问外部文件系统
数据库·postgresql