只在意能用,不考虑性能
WITH cte AS (
SELECT group_column, DATE_FORMAT(date_column, '%Y-%m') as month, COUNT(*) as count
FROM table_name
GROUP BY group_column, month
)
SELECT group_column, JSON_OBJECTAGG(month, count) as month_counts
FROM cte
GROUP BY group_column
ORDER BY group_column;
- List item
- group_column 是分组字段名
- date_column 是日期字段名
- table_name 是表名
- WITH cte 语句 用于查询分组后的结果, 方便之后的查询操作
- GROUP BY 按照 group_column 分组
- 最后 ORDER BY 按照 group_column 排序
该SQL语句创建了一个CTE来分组数据并计算每个月的计数,然后使用JSON_OBJECTAGG聚合函数生成键值对。由于大数据量可能导致内存问题,文章建议考虑使用分页查询来优化性能。
1954

被折叠的 条评论
为什么被折叠?



