我在多个Windows上进行多次计算。 每个窗口都是一个跳跃窗口,每秒输出一次(当然窗口持续时间不同)。
然后我只有一个输出查询连接我的5个窗口,并为每个连接窗口加上DATEDIFF(second, a, b) BETWEEN 0 AND 1
。
问题是此查询生成的行多于输入,但它应生成相同的数量。 (输入中的8行,查询中的4002行)
我在文档中找不到任何关于此行为的内容。
更新1:
我发现减少了JOIN DATEDIFF范围,我的事件减少了。
在我的所有查询中使用0-50ms的范围时,我有17个事件,但在将它们与8个输入事件进行比较时,它们包含一些事件的重复项,并且不包括所有事件,因此数据不完整
我的查询步骤如下:
Window_N - > Stats_Window_N (SELECT FROM Window_N JOIN Window_N)
- > All_Stats (SELECT FROM Window_N JOIN All Other Windows)
全部使用相同的DATEDIFF范围。
答案 0 :(得分:0)
加入条件中有什么?当连接没有预期的ON子句时,让我想起了笛卡尔积。
你能给出一些文字语法吗?抽象地谈论它可能太难掌握了。
谢谢,杰森