我想创建一个带有逗号分隔连接的sql statemnt(在PL SQL Developer中)?
SELECT * FROM TABLE1 t1 JOIN TABLE2 t2 ON t1.tab_id, second_id = t2.tab_id, second_id;
我总是得到一个ORA-00920例外。如果我把它改成两行:
t1.tab_id = t2.tab_id AND t1.second_id = t2.second_id;
然后我得到了行。
如果我可以使用昏迷分离列的第一步,有人会说我吗?
格尔茨
答案 0 :(得分:0)
您需要一个有效的条件:
SELECT *
FROM TABLE1 t1 JOIN
TABLE2 t2
ON t1.tab_id = t2.tab_id AND t1.second_id = t2.second_id;
我认为Oracle也会让你这样做:
SELECT *
FROM TABLE1 t1 JOIN
TABLE2 t2
ON (t1.tab_id, t1.second_id) in ( (t2.tab_id, t2.second_id) );
甚至:
SELECT *
FROM TABLE1 t1 JOIN
TABLE2 t2
USING (tab_id, second_id);
这是有效的,因为JOIN键在两个表中具有相同的名称。