Mysql 按照记录的日期分组,并将结果按照某字段分组聚合
遇到一个需求是将表内的数据按日期分组聚合,不过其中有个类型字段,需要同时将类型的值也做个分组聚合。请问应该如何写sql最优:
数据表结构
create table record
(
id int unsigned auto_increment
primary key,
amount int(10) default 0 not null comment '记录金额',
type tinyint(1) not null comment '记录类型 1 支出 2收入 3其他',
create_time datetime null
)
通过sql可以达到按天的分组,但是如何将type也按照每天分组做个统计
select DATE_FORMAT(create_time,'%Y-%m-%d') as day,sum(amount) amount,type from record group by DATE_FORMAT(create_time,'%Y-%m-%d')
期望查询出来的每行结果为如下字段:
day amount type_1_amount type_2_amount type_3_amount
请问这样效果应该如何实现?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我猜你
type_1_amount
、type_2_amount
分别表示的是每日支出和收入总额,那SQL就这样: