1

我有两张桌子:

images
imageid   imageKeySTring
-------   --------------
98        AAA
97        BBB
96        CCC
95        CCC
94        BBB

objects
imageKeyString     id2
--------------     -----
AAA                2
BBB                3
AAA                4
CCC                5
CCC                6
BBB                7

id2通过imageid匹配链接的所有组合imageKeyString我将如何在 Oracle SQL 查询中得到它?

例如,因为CCC我会回来:

5/95
5/96
6/95
6/96

返回(但我希望查询中的所有键返回值)

4

2 回答 2

3

看起来 ajoin会按照你的要求做。它返回连接表中的所有匹配行:

select  i.imageid
,       o.id2
from    images i
join    objects o
on      o.imageKeyString = s.ImageKeyString
于 2012-05-21T20:37:25.473 回答
0

您需要将表连接在一起并连接结果:

select i.imageKeyString,
       cast(o.id2 as varchar(10)||'/'||cast(i.imageid as varchar(10)) as newkey
from images i join
     objects o
     on i.imageKeyString = o.ImageKeyString 

如果缺少某些对象:

select i.imageKeyString,
       coalesce(cast(o.id2 as varchar(10), '')||'/'||cast(i.imageid as varchar(10)) as newkey
from images i left outer join
     objects o
     on i.imageKeyString = o.ImageKeyString 
于 2012-05-21T21:06:57.263 回答