如何编写商品销售逐日汇总查询的SELECT语句?

ZJM811192 2023-01-08 19:24:40

我在SQL2008数据库中建立了“商品进销存管理数据库”。其中有“商品销售记录表”,主要字段有:

 

编号(numeric(12, 0))    ……注:编号格式如20021212001,后3位为顺序号

销售日期(datetime)

购货者(char(10),null)

会员卡号(char(20),null)

商品名(char(40))

商品类别(char(10))   ……注:商品类别分为:甲类、乙类、丙类、丁类四类

商品级别(char(10))   ……注:商品级别分为:A级、B级、C级、D级四级

计量单位(char(4))

销售数量(numeric(10, 0))

进货单价(numeric(10, 4))

进货总价(numeric(10, 2))

应销单价(numeric(10, 4))

会员单价(numeric(10, 4))

实销单价(numeric(10, 4))

应售总额(numeric(10, 2))

实售总额(numeric(10, 2))

毛利(numeric(10, 2))  ………注:毛利等于实销总价–购进总价 

付款方式(char(20))    ………注:付款方式分为:现金、支付宝、微信、银行转账

 

     现在需要根据销售数据,通过编写SELECT语句,求出某一时间段(如近三年)逐日销售汇总数据。

其中:逐日销售汇总数据要求汇总内容为:

销售日期(以日期型格式表示:2022/12/12)

来客数(以表中出现的不同“编号”数统计)

日销售品种(以表中出现的商品销售行数统计)

日应收总额(统计日所销售商品的应收总额)

日实收总额(统计日所销售商品的实收总额)

日让利总额(统计日所销售商品的应收总额减去实收总额)

进货总额(统计日所销售商品的进货总价)

毛利(实收总额–进货总额)

毛利率 (毛利*100/实收总额)

日销甲类商品总额(统计日销售甲类商品的实收总额)

日销甲类商品毛利((统计日甲类商品实收总额–进货总额)*100/实收总额)

日销A级商品总额(统计日销售A级商品的实收总额)

日销A级商品毛利((统计日A级商品实收总额–进货总额)*100/实收总额)

日会员销售总额(统计日会员销售的实收总额,以会员卡号不为null或空值为准)

 

我已经编写出求逐日汇总查询的视图的简易语句:

SELECT CONVERT(VARCHAR(8), 销售日期, 112) AS 销售日期, SUM(购进总价) AS 购进总价, SUM(销售总价) AS 销售总价, SUM(购销差价) AS 购销差价, COUNT(销售总价) AS 销售批次, SUM(应销售总价) AS 应销售总价, SUM(应销售总价) - SUM(销售总价) AS 让利总额 FROM dbo.商品销售记录表 GROUP BY CONVERT(VARCHAR(8), 销售日期, 112)

以上语句能正常运行。

现在要问:如何在上述语句中插入求每日销售甲类商品与A级商品金额的句子?敬请指导,不胜感激!

...全文
43 1 打赏 收藏 举报
写回复
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
二月十六 版主 01-09
  • 打赏
  • 举报
回复

SELECT CONVERT(VARCHAR(8), 销售日期, 112) AS 销售日期,
       SUM(购进总价) AS 购进总价,
       SUM(销售总价) AS 销售总价,
       SUM(购销差价) AS 购销差价,
       COUNT(销售总价) AS 销售批次,
       SUM(应销售总价) AS 应销售总价,
       SUM(应销售总价) - SUM(销售总价) AS 让利总额,
       SUM(CASE WHEN 商品类别='甲类' THEN 1 ELSE 0 end) AS 每日销售甲类商品,        --这里的1改成想要统计的金额字段
       SUM(CASE WHEN 商品级别='A级' THEN 1 ELSE 0 end) AS A级商品金额                    --这里的1改成想要统计的金额字段
FROM dbo.商品销售记录表
GROUP BY CONVERT(VARCHAR(8), 销售日期, 112);
相关推荐
发帖
MS-SQL Server

3.4w+

社区成员

MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
帖子事件
创建了帖子
2023-01-08 19:24
社区公告
暂无公告