拿到需求的时候我还觉得挺简单,就concat写在视图就好了。
但是仔细一写发现了不对劲。
需求是这样的,先是一张个人填写的信息表格,各项填写完后用视图按照填写的时间group by每天做个统计做显示。
但是现在需要在末尾加两个字段是统计出来的某个字段的数量在总数中占比。
比如信息中有一个A字段,只有B和C两个选项,那需要统计B/A的百分比。
但是在视图中算B的总数时候一定会用到按照时间的小括号group by。可整体的本身也存在一个group by。这怎么能做到把group by两个取得时间是同一个呢。
伤脑筋。
太过于抽象,你给点数据,然后整理出想要个格式。
其实group by的是一个东西、 所以一条sql就可以实现、 转换一下想法、 没必要一定用count
create temporary table tm_z( zdate date ,A varchar(50));
insert into tm_z(zdate, A) values
(curdate(),'b'),(curdate(),'b'),(curdate(),'b'),(curdate(),'a'),
(curdate(),'a'),(curdate()+1,'a'),(curdate()+1,'a'),(curdate()+1,'a'), (curdate()+1,'b');
select * from tm_z ;