【发布时间】:2019-02-22 22:35:26
【问题描述】:
我正在尝试获取解决以下问题的 SQL 语句。
我有一个表“日历”,其中仅包含一列“日期”。该表有 2019 年每个月的 12 个条目(01.31.2019、02.28.2019 等)。第二个表“值”(我从 ERP 系统获得)有三列,“从”、“到”和“金额”(例如 01.01.2019、06.30.2019、50 和 08.01.2019、08.31.2019, 100)。
我有一个简单的语句来检查哪个条目在特定日期有效:
SELECT Calendar.Date, Values.From, Values.To, Values.Amount
FROM Calendar, [Values]
WHERE Calendar.Date >= Values.From
AND Calendar.Date <= Values.To;
7 月、9 月、10 月、11 月和 12 月没有有效的条目(在“值”表中)。
如果没有有效条目,则应使用最后一个条目。 7 月份是 50,而 9 月、10 月......它将是 100。
我尝试了子查询和左连接,但我从来没有得到想要的结果。
有没有人对此问题有想法或更好的解决方案。感谢您的支持
【问题讨论】:
-
样本数据和期望的结果会有所帮助。