写sql语句为什么用除号“/”不好使

写sql语句 为什么用除号“/” 不好使

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

这样试试

SELECT 种类, sum(已售出*售价*1.0)/(select sum(已售出*售价) from 超市商品分类) as 各类销售占比 FROM 超市商品分类 group by 种类

最佳回答
0
Z4u3z1Lv6专家互助
发布于2022-8-30 14:54(编辑于 2022-8-30 15:05)

怎么不好使 得说说呗

with sale as(

select 'a' [种类],10 [已售出],17.5 [售价] 

UNION ALL

select 'a' [种类],12 [售出],17.5 [售价] 

UNION ALL

select 'a' [种类],13 [售出],17.5 [售价] 

UNION ALL

select 'B' [种类],14 [售出],17.5 [售价] 

UNION ALL

select 'B' [种类],15 [售出],17.5 [售价] 

UNION ALL

select 'C' [种类],16 [售出],17.5 [售价] 

UNION ALL

select 'C' [种类],17 [售出],17.5 [售价] 

UNION ALL

select 'D' [种类],18 [售出],17.5 [售价] 

UNION ALL

select 'D' [种类],19 [售出],17.5 [售价] 

)

SELECT 种类, sum(已售出*售价)/(select sum(已售出*售价) from sale) as 各类销售占比 FROM sale group by 种类

image.png

image.png

  • yzmhaRR81664191 yzmhaRR81664191(提问者) 就是写了一个占比语句 SELECT 种类, sum(已售出*售价)/(select sum(已售出*售价) from 超市商品分类) as 各类销售占比 FROM 超市商品分类 group by 种类 帮忙看一下这个语句有问题吗?为什么查不出来 查出来的占比都是0
    2022-08-30 14:56 
  • Z4u3z1 Z4u3z1 回复 yzmhaRR81664191(提问者) 你看补充的图,模拟的数据是对的。这恐怕要看你具体的数据了吧
    2022-08-30 15:06 
  • yzmhaRR81664191 yzmhaRR81664191(提问者) 感谢解答 已经解决了 楼下评论的做法可以查出来
    2022-08-30 15:11 
  • Z4u3z1 Z4u3z1 回复 yzmhaRR81664191(提问者) 你的已售出 和售价全是整数????
    2022-08-30 15:13 
  • yzmhaRR81664191 yzmhaRR81664191(提问者) 回复 Z4u3z1 是的
    2022-08-30 16:47 
  • 2关注人数
  • 327浏览人数
  • 最后回答于:2022-8-30 15:05
    请选择关闭问题的原因
    确定 取消
    返回顶部