数据: 我有一行代表产品的年度订阅,它有一个整体的 startDate 和 endDate,还有第三个日期,即 startdate + 1 个月,称为 endDateNew。我还有一个不相关的日期表(称为表 X)。
我正在寻找的输出: 如果表 X 中选择的日期在 startDate 和 endDateNew 之间,我需要一个名为 Categorization 的新列,如果日期在 startDate 和 endDate 之间,则返回“现有”。
问题: 该列似乎立即评估,而不考虑非相关日期表中的日期上下文 - 我有点希望这会在 Visual Studio 中发生(它假设上下文是所有记录?)但是在 Excel 中预览时通过这个相同的值。
起作用的一点是:我有一个聚合(活跃订阅者计数),可以正确地将订阅计数为在表 X 中选择的月份内是活跃的。
单个日期的 SQL 等效项:
case
when '2015-10-01' between startDate and endDateNew then 'New'
when '2015-10-01' < endDate then 'Existing'
end as Category
将为表 X 中的每个日期计算该值
谢谢!
罗斯