表A
日期 笔数
2014-1-1 1
2014-1-2 5
2014-1-3 6
2014-2-1 1
2014-2-12 12
2014-2-17 6
2014-3-7 6
想得到这个结果
年 月 这月笔数 历史笔数
2014 1 12 0
2014 2 19 12
2014 3 6 21
这样的语句怎么写,求高手
数据库sql 语句关联 统计
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
4条回答 默认 最新
- 千杯不醉476 2017-06-27 08:38关注
select year(a.
日期
) as '年',month(a.日期
) as '月',sum(a.笔数
) as '这月笔数',
(select IFNULL(sum(b.笔数
),0) from total b
where year(a.日期
) = year(b.日期
)
and month(a.日期
) > month(b.日期
)
) as '历史笔数'
from total a
group by year(a.日期
),month(a.日期
);如果报:only full group错误
则使用:set @@global.sql_mode ='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报