mysql 人大金仓 按照日 周 月 年 分组查询

'%Y-%m-%d %H:%i:%s'

 

查询每天的数据

myslq:
SELECT COUNT(1) AS total, DATE_FORMAT(created_time,'%Y-%m-%d') AS days FROM table_test GROUP BY days ;

金仓:
SELECT COUNT(1) AS total,to_char(created_time,'%Y-%m-%d') AS days FROM table_test GROUP BY days ;

查询每周的数据

mysql:
SELECT COUNT(1) AS total, WEEK(created_time) AS weeks FROM table_test GROUP BY weeks ;

金仓:
SELECT COUNT(1) AS total, WEEK(created_time) AS weeks FROM table_test GROUP BY weeks ;

查询每月的数据

mysql:
SELECT COUNT(1) AS total, MONTH(created_time) AS months FROM table_test GROUP BY months ;
SELECT COUNT(1) AS total, DATE_FORMAT(created_time, '%Y-%M') AS months FROM table_test GROUP BY months ;

金仓:
SELECT COUNT(1) AS total, to_char(created_time, 'yyyy-MM') AS months FROM table_test GROUP BY to_char(created_time, 'yyyy-MM') ;
SELECT COUNT(1) AS total, to_char(created_time, '%Y-%M') AS months FROM table_test GROUP BY months ;
SELECT COUNT(1) AS total, MONTH(created_time) AS months FROM table_test GROUP BY months ;

 查询每年的数据

mysql:
SELECT COUNT(1) AS total, YEAR(created_time) AS years FROM table_test GROUP BY years ;
SELECT COUNT(1) AS total, DATE_FORMAT(created_time,'%Y') AS years FROM table_test GROUP BY years ;

金仓:
select COUNT(1) AS total, to_char(created_time, 'yyyy') AS year FROM table_test GROUP BY to_char(created_time, 'yyyy');
select COUNT(1) AS total, to_char(created_time, '%Y') AS year FROM table_test GROUP BY year;

 



注意mysql 有如下函数:
DATE_ADD(createTime,INTERVAL 1 DAY) 得到指定日期后一天的日期/把1改为任意数字就可以得到后N天的日期
DATE_SUB(createTime,INTERVAL 1 DAY) 得到指定日期前一天的日期/把1改为任意数字就可以得到前N天的日期

posted @   ジ绯色月下ぎ  阅读(580)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
历史上的今天:
2018-11-15 SpringBoot图片上传(五) 上一篇的新版本,样式修改后的
2018-11-15 眼睛不是用来出气的
点击右上角即可分享
微信分享提示