【发布时间】:2019-02-04 07:57:50
【问题描述】:
我有两个正在为我做这项工作的查询,但我想将它们合并以将结果放在一个表中,而不是将结果复制到 excel 中。
第一个查询给出了 2018 年每月至少有一个订阅到期的用户数量:
WITH UniqueUsers AS
(
SELECT DISTINCT MONTH(ValidTo) ExpireMonth, UserId
FROM UserInAppPurchase
WHERE YEAR(ValidTo) = 2018
)
SELECT ExpireMonth, COUNT(UserId) UserCount
FROM UniqueUsers
GROUP BY ExpireMonth order by ExpireMonth;
第二个查询给出了 2018 年每月至少购买一次订阅的用户数量:
WITH UniqueUsers AS
(
SELECT DISTINCT MONTH(PurchaseDate) PurchaseMonth, UserId
FROM UserInAppPurchase
WHERE YEAR(PurchaseDate) = 2018
)
SELECT PurchaseMonth, COUNT(UserId) UserCount
FROM UniqueUsers
GROUP BY PurchaseMonth order by PurchaseMonth;
其实 PurchaseMonth 和 ExpireMonth 是一样的。
我的预期输出是:第 1 列:2018 年的几个月
第二列:第一次查询的结果
第三列:第二个查询的结果
只是复制两个结果并手动组合它们并没有太大的危害,但是我很好奇如何直接在SQL中进行。
感谢您的帮助
【问题讨论】:
-
你的预期输出是什么
-
用我的预期输出编辑了我的帖子
标签: sql sql-server