我有如下数据,i想做成后面这种展现,SQL怎么写

FineReport 十万个小问题 发布于 2022-6-28 09:32
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共3回答
最佳回答
0
Z4u3z1Lv6专家互助
发布于2022-6-28 09:54

一条SQL 写不出就多条SQL嘛。以胸围为例:

SELECT 性别,SUM(偏大) [偏大],SUM(偏小) [偏小],SUM(正常) [正常],SUM(偏大+偏小+正常) [合计] FROM (

SELECT 性别,(CASE WHEN 胸围偏差='偏大' THEN 1 ELSE 0 END) [偏大],(CASE WHEN 胸围偏差='偏小' THEN 1 ELSE 0 END) [偏小],(CASE WHEN 胸围偏差='正常' THEN 1 ELSE 0 END) [正常] FROM TABLE WHERE .............

) T GROUP BY 性别

  • 十万个小问题 十万个小问题(提问者) 嘎,前面我写了40个CASE WHEN 构成的结果集,后面还是这样对查询效率会不会影响太大
    2022-06-28 09:58 
  • Z4u3z1 Z4u3z1 回复 十万个小问题(提问者) 要么你就用case when 交给数据库处理 要么你就换成 SELECT 性别,胸围偏差,COUNT(客户) [SL] GROUP BY 性别,胸围偏差 然后交给帆软筛选
    2022-06-28 10:14 
最佳回答
0
用户dGPDs6621224Lv3见习互助
发布于2022-6-28 09:39

你们领导给你说需求都是只发图的吗

最佳回答
0
蒲公英FZLJLv5初级互助
发布于2022-6-28 10:10

基础数据处理下,然后用帆软报表的功能,项目纵向扩展、偏差横向扩展,客户汇总个数?

select 客户,性别,'胸围' 项目,胸围偏差

from 表名

union all

select 客户,性别,'颈围' 项目,颈围偏差

from 表名

  • 3关注人数
  • 296浏览人数
  • 最后回答于:2022-6-28 10:10
    请选择关闭问题的原因
    确定 取消
    返回顶部