我想刚做好订阅数量每月结束订阅的数量在2018年比较,并结合到这一个表。
与x轴是2018个(所以一月,二月,等等)和y轴作为第一排我的第一个sql查询=次数用完了当月订阅。第二行是我的第二个sql查询=当月新做的订阅数。我的“查询”下有作为2018年三月的例子。
SELECT
COUNT (UserId)
FROM
UserInAppPurchase
WHERE
ValidTo > '2018-03-01' AND ValidTo < '2018-03-31'
GROUP BY
UserId
SELECT COUNT(UserId)
FROM UserInAppPurchase
WHERE PurchaseDate > '2018-03-01'
AND PurchaseDate < '2018-03-31'
GROUP BY UserId
非常感谢您的帮助
如果我的理解是正确的,上面的查询将返回多行单月,这将依赖于独特的用户订货总数。然后,每个月和每个用户在两个垂直,上述图形将是一个3D图形,我不认为这里的情况。所以,取而代之的是,我能想到的2例,
SELECT MONTH(ValidTo) ExpireMonth, COUNT(UserId) ExpireCount
FROM UserInAppPurchase
WHERE YEAR(ValidTo) = 2018
GROUP BY MONTH(ValidTo);
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;
类似的查询将是购买的订阅也。
请让我知道,如果你需要的是不同的。
如果你希望用户ID的计数你不应该组由用户ID
SELECT COUNT (UserId), 'valid_to'
FROM UserInAppPurchase WHERE ValidTo>'2018-03-01' and ValidTo<'2018-03-31'
union all
SELECT COUNT (UserId), 'PurchaseDate'
FROM UserInAppPurchase WHERE PurchaseDate>'2018-03-01' and PurchaseDate<'2018-03-31'