【发布时间】:2025-12-23 15:25:10
【问题描述】:
我目前正在尝试填充我的事实表,但在填充所需的时间 ID 时遇到了问题。时间维度已完全填充且完整。基本上在时间维度上,每一行是一个 15 分钟的周期。事实表正在填充有关调用的详细信息。在暂存呼叫表中,我有呼叫的开始和结束时间。
我想通过在时间开始时加入临时表上的维度来填充事实表,并且当维度中的 time_Start 介于临时的开始时间和结束时间之间时。我已经运行了下面的查询使用 = 运算符,但它似乎不起作用,当我应该期待更多像 4000 时只拉出 100 行。我可以使用 BETWEEN 代替 = 吗?
INNER JOIN Time_Dim ON incoming_measure.StartTimeDate = Time_Start
WHERE Time_Start BETWEEN incoming_measure.StartTimeDate AND incoming_measure.EndTimeDate
感谢您的帮助。
【问题讨论】:
-
你试过了吗?你遇到了什么错误?
-
我没有收到任何错误,它运行的问题是行数,如果理论上将数据拆分为 timeID,它会降低我的行数,它应该增加数量而不是减少
标签: sql-server join operators inner-join