首页 > 解决方案 > 如何将两个选择查询合并为一个

问题描述

我有一个包含以下列的表格

StoreId,Date,Total,Type

有两个查询按预期工作,但我想做一个查询来完成这两项任务。请帮忙

select lRetailStoreId,szDate,sum(dTaTotal) as GiftCardSales 
from TxSaleLineItem 
where szTypeCode='GIFT'
group by lRetailStoreID,szDate


select lRetailStoreId,szDate,sum(dTaTotal) as TotalSalesByDay 
from TxSaleLineItem 
group by lRetailStoreID,szDate

标签: mysql

解决方案


您可以使用条件聚合:

select lRetailStoreId,
       szDate,
       sum(case when szTypeCode='GIFT' then dTaTotal else 0 end) as GiftCardSales,
       sum(dTaTotal) as TotalSalesByDay
from TxSaleLineItem
group by lRetailStoreID, szDate

推荐阅读