请教SQL的查询问题

leetow2006 2020-04-29 12:59:29
我的表orderInfo中有这样几个字段:sNum1 smallint,sDate1 char(6),sNum2 smallint,sDate2 char(6),sNum3 smallint,sDate3 char(6),
也就是销售日期和销售数量,也就是说:某类产品有可能在不同的日期进行销售(也可能跨月),现在我想查询当输入销售年月时,
把该年月销售的数量进行相加,该表还有字段id,name等(id是关键字),
感觉好像select id,name,sNum1 from orderInfo where sDate1="202004",select id,name,sNum2 from orderInfo where sDate2="202004",select id,name,sNum3 from orderInfo where sDate3="202004"
分别运行,然后根据相同ID把sNum1+sNum2+sNum3进行相加,可是不知道怎么写?请问能不能帮我写这样的SQL语句?
只写一条SQL语句还是要写多条语句?
...全文
165 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
leetow2006 2020-04-30
  • 打赏
  • 举报
回复
请问那该如何改正?如何使用Group By 来计算?
胖到没有朋友 2020-04-30
  • 打赏
  • 举报
回复
如果 你的一条记录记录了多次出售记录,那么你可以考虑用下面的语句

select id,name,sum(sNum1,sNum2,sNum3) from orderInfo where sDate1=sDate2=sDate3="202004" group by id,name
先说一个题外话啊,感觉如果是这样的话,这个表设计的方式不对啊。
带我飞的云 2020-04-29
  • 打赏
  • 举报
回复
你查询和使用方法有问题,我觉得应该只有一个日期栏位,使用Group By 来计算
请把你的表结构,一起学习一下~

56,679

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧