【发布时间】:2016-02-24 13:40:29
【问题描述】:
我希望在我的表(我们称之为 MY_TABLE)上运行 UPDATE 和随后的 DELETE 查询,以下列方式合并所有行。
输入表
ID LowerRange UpperRange Attribute
1 10 20 A
2 20 30 A
3 40 50 A
4 15 35 B
输出表
ID LowerRange UpperRange Attribute
1 10 30 A
3 40 50 A
4 15 35 B
注意如何...
- 输入表的第 1 行和第 2 行合并到输出表的第 1 行,因为它们的范围重叠并且具有相同的属性。
- 输入表的第 3 行未与第 1 行和第 2 行合并,因为它们的范围不重叠,尽管它们具有相同的属性。
- 输入表的第 4 行未与第 1 行和第 2 行合并,因为它们没有相同的属性,尽管有重叠的范围。
TABLE 中的所有行将在它们的范围重叠且具有相同属性的地方合并。
如果您有任何问题,请告诉我。任何帮助将不胜感激。
谢谢, 斯蒂芬。
【问题讨论】:
-
您是否会遇到下一行与同一属性的上一行重叠的情况?例如。对于属性 C,(lower_range, upper_range) 为 (10, 20) 和 (15, 23) 的行。或者,lower_range 是否总是与前一行的 upper_range 相同或更大?