是否可以使用SQL(或PL/SQL)动态连接表?动态或条件加入
我有一个表A与多列。下面的每一列都有自己的独立表格,除了id。
| id | AA | BB | CC | DD | EE |
|-----|----|----|----|----|----|
| 123 | 0 | 0 | 1 | 1 | 1 |
| 456 | 1 | 1 | 0 | 1 | 1 |
| 789 | 1 | 0 | 1 | 0 | 0 |
.......
根据我需要连接表的列的值。
- 对于ID = 123我想加入CC,DD,EE表。
- 对于ID = 456我想加盟AA,BB,DD,EE表。
- 对于ID = 789我想加盟AA,CC表。
- 依此类推。
- 最后将结果合并到一个表中。
- 另外,表AA,BB,CC,DD,EE具有相同的一组列。
实施例的数据:
表AA
| id | Value |
|-----|-------|
| 456 | bbb |
| 789 | ccc |
表BB
| id | Value |
|-----|-------|
| 789 | ccc |
| 456 | bbb |
表CC
| id | Value |
|-----|-------|
| 123 | aaa |
| 789 | ccc |
表DD
| id | Value |
|-----|-------|
| 123 | aaa |
表EE
| id | Value |
|-----|-------|
| 123 | aaa |
期望输出
| id | Value |
|-----|-------|
| 123 | abc |
| 789 | ccc |
ID 456不会成为最终结果的一部分,因为它在加入时会被过滤掉。
是否有可能在SQL或PL/SQL(首选普通SQL)中这样做。另外:我想做一个INNER JOIN
。
您应该使用样本数据*和*希望的结果编辑您的查询。 –
你在价值后放了一段时间的原因是什么?你能发表DDL吗? –
这是错字。更新了问题 –