Oracle11g Oracle将列与逗号分隔的值组合在一起

Oracle11g Oracle将列与逗号分隔的值组合在一起,oracle11g,Oracle11g,我有一个表,每行的值类似于“1,2,3,4,5,6,7” ID Value 101 5,6,7 201 8,9,3 301 3,4,5 值列值是其他表B的外键 表B 有没有办法在一个查询中将这两个表连接在一起? 我想通过101,得到C N值。如果你的模型如图所示,像这样吗 select a.id, listagg(new_value, ',') within group (order by new_value) new_value from a inner join

我有一个表,每行的值类似于“1,2,3,4,5,6,7”

ID Value
101  5,6,7
201  8,9,3
301  3,4,5
值列值是其他表B的外键 表B

有没有办法在一个查询中将这两个表连接在一起?
我想通过101,得到C N值。

如果你的模型如图所示,像这样吗

select a.id, listagg(new_value, ',') within group (order by new_value) new_value
  from a 
       inner join b 
               on ','||a.value||',' like '%,'|| b.value ||',%'
 group by a.id

如果您的模型如图所示,是这样的吗

select a.id, listagg(new_value, ',') within group (order by new_value) new_value
  from a 
       inner join b 
               on ','||a.value||',' like '%,'|| b.value ||',%'
 group by a.id

可能会使用一些格式,并且很难准确地理解您想要的内容。根据定义,如果B中的5是有效值,而不是字符串
5,6,7
,则B中不能有指向a中
value
列的外键。你真的有外键吗?如果您这样做,则数据模型必须不同。可能会使用一些格式,并且很难准确地理解您想要的内容。根据定义,如果B中的5是有效值,而不是字符串
5,6,7
,则B中不能有指向a中
value
列的外键。你真的有外键吗?如果这样做,则数据模型必须不同。