所以我一直害怕提出这个问题 - 主要是因为我在excel中的逻辑非常糟糕,并且将逻辑语句转移到SQL对我来说是一个很大的困难,但是我会尝试将其变得如此清晰。可能的。
我有两张桌子。一个表格为historic_events
,另一个表格为future_events
。基于future_events
,我有另一个表格confidence_interval
根据将future_events
将会发生多少historic_event
来计算一个z分数告诉我,我将需要多少historic_events
个数据点计算可靠的平均值。 event_id
中的每条记录都有一个名为confidence_interval
的唯一键。 service_id
中的每条记录都有一个名为service_id
的字段,该字段是唯一的。 'service_id'字段也存在于'historic_events'中,它们可以在该字段上连接。
所以,尽管如此,基于confidence_interval
的未来事件计数,我的historic_events
表计算了z得分。然后,我需要为满足以下参数的每个service_id
从Select * EVENT_ID
From historic_events
where END_DATE is within two calendar years from todays date
and count of `EVENT_ID` is >= `confidence_interval.Z_SCORE`
表中选择记录
EVENT_ID
如果不满足这些参数,那么我想将日期值扩展到三年内。
如果仍然没有达到这些参数,我想将日期值扩大到四年内,然后再扩大到五年。如果五年后仍然没有足够的数据点,哦,我们将满足于我们拥有的东西。我们不想查看超过五年的数据点。
我希望我的最终结果是一个包含service_id
列表的表,我会为每个SELECT
重新运行SQL查询。
我希望这是有道理的 - 我可以找出FROM
和WHERE
,但完全陷入{{1}}。