SQL在分支条件下连接表

时间:2015-01-14 14:54:41

标签: sql oracle11g

我正在尝试“扭曲”执行SQL连接,如下所示:

SELECT *
FROM a
JOIN b ON /* a.type == 'any' ? b.id IS NULL : b.id = a.id */

其中注释是用类C语法编写的。如何在SQL中表达我想要的内容? (最好是ANSI,但特定于Oracle数据库也很好。)

1 个答案:

答案 0 :(得分:3)

SELECT *
FROM a
JOIN b ON (a.type  = 'any' AND b.id IS NULL) 
       OR (a.type <> 'any' AND b.id = a.id)