我有两张桌子,比如说 A 和 B。它们是相当大的桌子,它们记录了某些信息。表 A 每隔几天扫描一次数据但缺少状态列的文档
注意:我需要一个没有明确提及以下日期的查询 - 它需要在所有此类日期范围内工作。
如果有更改,则表 B 将获得一个带有状态列的新条目。我需要匹配这两个并为表 A 中对应于 B 的每个条目派生一个状态。
表 A
Id | Num1 | Num2 | CreatedOn | Status
100 | 11552 | 82023 | 28/05/2013 | New
150 | 11552 | 82023 | 28/05/2013 | Closed
200 | 11552 | 82023 | 31/05/2013 | Standby
250 | 11552 | 82023 | 04/06/2013 | Closed
表 B
Id | Num1 | Num2 | CreatedOn
55 | 11552 | 82023 | 28/05/2013
99 | 11552 | 82023 | 30/05/2013
145 | 11552 | 82023 | 31/05/2013
192 | 11552 | 82023 | 31/05/2013
223 | 11552 | 82023 | 04/06/2013
期望的输出
Id | Num1 | Num2 | CreatedOn | Status
55 | 11552 | 82023 | 28/05/2013 | New
99 | 11552 | 82023 | 30/05/2013 | Closed
145 | 11552 | 82023 | 31/05/2013 | Standby
192 | 11552 | 82023 | 31/05/2013 | Standby
223 | 11552 | 82023 | 04/06/2013 | Closed
请为此选择建议 Oracle SQL 查询。
如果可能的话,高效的,因为表有 >100,000 条记录