【发布时间】:2017-09-25 17:32:36
【问题描述】:
在我的 oracle 数据库中,我有 2 个表,我必须加入它们,在表 A 中我的列 ID 是数字,在表 B 中我的列 SCIDS 是 varchar2。举个例子:
TABLEA.ID | TABLEB.SCIDS
162 | 162,163
162 | 555,162,33
161 | 161
我尝试了一些 sql
select A.ID
from TABLEA A
left JOIN TABLEB B
where "," || S.ID in "," || B.SCIDS
这不起作用,它只返回 SCIDS 中不是“数组”的记录,例如第 3 条记录 161。
如何全部退回?
【问题讨论】:
-
糟糕的表格设计。永远不要将数据存储为逗号分隔的项目 - 这只会给您带来很多麻烦。
-
@KaushikNayak 我得到与我的 sql 相同的结果