求sql查询药品销售详情的语句

下面是我的代码,只能查询到某个科室一共卖了多少钱,求一个可以具体到查询某个人某个药品某时间段的销售金额

SELECT MAX(科室) 科室,
医生名称 ,
SUM(数量) 数量,
SUM(金额) 金额
FROM REPORT.dbo.SWGZLTJ A
WHERE A.CREATE_TIME>='2020-02-01 00:00:00' AND A.CREATE_TIME<='2020-02-05 00:00:00'
GROUP BY 医生名称

第1个回答  2020-03-13
这个问题,你得把查询场景表述清楚,简单的Group By,只能按固定的需求分组,,应该说,你的需求应该是一个按条件筛选的分组统计查询,,,
String sql = "SELECT 科室,医生名称 ,数量,金额 FROM REPORT.dbo.SWGZLTJ A WHERE A.CREATE_TIME>='2020-02-01 00:00:00' AND A.CREATE_TIME<='2020-02-05 00:00:00' and 条件1=? and 条件2=? ......"; //这里是先筛选符合条件的记录
String Sql2 = "SELECT MAX(t1.科室) 科室, t1.医生名称 ,SUM(t1.数量) 数量,SUM(t1.金额) 金额 from ("+sql+") as t1 GROUP BY t1.医生名称,t1.科室"; //这里的Group by 是按医生与科室去分组,,至于要怎 样分组,这个条件可以自行设定,这里只是提供示例
最后,把sql2扔去跑一下就出结果了
第2个回答  2020-02-08
SELECT MAX(科室) 科室,
医生名称 ,
SUM(数量) 数量,
SUM(金额) 金额,
date_format(A.CREATE_TIME, '%Y-%m-%d') as ctime
FROM REPORT.dbo.SWGZLTJ A
WHERE A.CREATE_TIME>='2020-02-01 00:00:00' AND A.CREATE_TIME<='2020-02-05 00:00:00'
GROUP BY 医生名称,商品ID,ctime本回答被网友采纳
相似回答