sql 多表查询问题
sql多表查询问题现在有t1商品目录表,包含商品id、商品名称、商品生产企业等信息t2销售明细表,包含销售日期、销售人员、商品id、数量等求教如何才能在一个查询结果里按月...
sql 多表查询问题现在有t1商品目录表,包含商品id、商品名称、商品生产企业等信息
t2销售明细表,包含销售日期、销售人员、商品id、数量等
求教如何才能在一个查询结果里按月统计销量前五名的数据,包含商品id、改商品总销售数量、生产企业三列。 展开
t2销售明细表,包含销售日期、销售人员、商品id、数量等
求教如何才能在一个查询结果里按月统计销量前五名的数据,包含商品id、改商品总销售数量、生产企业三列。 展开
展开全部
-- 至少 MSSQL2005
with ts as (
select convert(char(7), 销售日期, 102) as 月份, 商品id, sum(数量) as 总销售数量
from t2
group by convert(char(7), 销售日期, 102), 商品id
--order by convert(char(7), 销售日期, 102), sum(数量) desc
)
select a.月份,a.商品id, a.总销售数量, b.生产企业
from ts a left join t1 b on a.商品id=b.商品id
where exists(select count(0) from ts where 月份=a.月份 and 总销售数量>a.总销售数量 having count(0)<10)
order by a.月份, a.总销售数量 desc
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询