也许数据框架从一开始就存在缺陷,但是......我需要在两个表上进行out连接,但我需要在第二个表的第二列连接中进行连接。
例如,表一
title | key
-------+-------
foo | Bar1
表二
subcat | pt1 | pt2
--------+-----+-----
kitty | Bar | 1
我基本上需要将pt1
+ pt2
组合为外键。
这在很大程度上是学术性的,因为我可以在数据集(不是我的原始创建)中添加一个列,即连接,但是,我想知道是否可能。
Postgres版本8.4.8
cheers.bo
答案 0 :(得分:1)
您始终可以创建子查询并针对子查询执行连接:
SELECT t1.foo, t1.key, t3.subcat FROM table1
JOIN (SELECT t2.pt1 || t2.pt2 AS ptjoined, t2.subcat
FROM tabletwo AS t2) as t3
ON t3.ptjoined = t1.key
答案 1 :(得分:1)
连接条件几乎可以是任何表达式;特别是,您可以包含字符串连接:
select ...
from t1 left outer join t2 on t1.key = t2.pt1 || t2.pt2
where ...