一个分组查询引发的思考
我们在看项目代码或者SQL语句时, 往往会看到很多非常复杂的业务或者SQL
那么问题来了. 复杂SQL是如何写成的?...分组统计各项业务
下面产品经理又给你说, 那你搞个按年月日进行统计吧, 这样用户可以按照年月日进行统计各种信息
-- 通过时间分组(年月日)并根据分组显示每天时长
-- 逻辑
select 各项业务..., 图3.
-- 可以看到虽然执行没问题, 但是返回结果却没有根据ifnull将 takeTime 为null时的字段改成 我们想要定制的字段: 总计
-- 分组异常时执行下面命令
set sql_mode...模式
SELECT @@sql_mode
-- d 利用 union all 进行组合查询, 通过组合查询将总计信息拼在原来的列下(图4)
-- 虽然这样写不太规范(在时间里面返回了一个总计的字段...就个人经历而言, 复杂的SQL语句或者业务, 不是一下子就写成的, 而是随着业务的复杂之后, 慢慢的优化而成的.
我们不要过于的惧怕这些复杂的代码, 应该在战略上蔑视它, 在战术上重视它.