mysql数据库,表格中记录每年每月的销售数据,我需要根据条件显示,如何写mysql语句

mysql数据库在帆软数据查找中,需要左边是月份,列显2018年,2019年的数据。如何写mysql语句{C5743311-472D-4818-84C6-B72E21B48E20}_20190605152919.jpg

bwm 发布于 2019-6-5 15:33
1min目标场景问卷 立即参与
回答问题
悬赏:4 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共3回答
最佳回答
0
axingLv6专家互助
发布于2019-6-5 15:38

是不是这个意思:

月字段放A2单元格,纵向扩展

年字段放B1单元格,横向扩展

第三个字段放B2单元格,默认


blob.png

  • bwm bwm(提问者) 我需要用mysql语句解决
    2019-06-05 15:46 
  • axing axing 回复 bwm(提问者) 不清楚你想做什么,建议还是在帆软实现,如果必须mysql,可以参考https://www.cnblogs.com/ken-jl/p/8570518.html
    2019-06-05 15:53 
最佳回答
0
张洪威Lv6高级互助
发布于2019-6-5 15:39(编辑于 2019-6-5 16:00)

SQL里面行转列的意思啊,做了个例子你看看。


原始数据图1,新数据图2,SQL图3


你这题用  


 select a.月份,sum(a.2019n) as '2019年',sum(a.2018n) as '2018年' from

( select 月份,

 (case when 年=2019 then 实际销售额 else 0 end ) as '2019n',

 (case when 年=2018 then 实际销售额 else 0 end ) as '2018n'

 from 表名 ) a

group by a.月份 



图中sql:   select a.月份,sum(a.北美1) as '北美',sum(a.亚太1) as '亚太地区' from

( select 月份,

 (case when 地区='北美' then 实际销售额 else 0 end ) as '北美1',

 (case when 地区='亚太地区' then 实际销售额 else 0 end ) as '亚太1'

 from 年度 where 地区 in ('北美','亚太地区') ) a

group by a.月份 





image.png


image.png


image.png



最佳回答
0
jie.deng02Lv6见习互助
发布于2019-6-5 16:24

select  月,年,CV_ZYYWS

from 表

order by 月,年

  • 4关注人数
  • 736浏览人数
  • 最后回答于:2019-6-5 16:24
    请选择关闭问题的原因
    确定 取消
    返回顶部