我有一个要求:
表 A 中有一列 CNT。
如果CNT的值> 0
我必须选择列 SERIAL 和 DESCRIPTION
来自表 B else SERIAL 和 DESCRIPTION
来自表 C。
我如何在 Oracle 中执行此操作
最佳答案
您需要使用 UNION
:
SELECT a.cnt, b.serial, b.description
FROM a INNER JOIN b
ON a.key = b.key
WHERE a.cnt > 0
UNION ALL
SELECT a.cnt, c.serial, c.description
FROM a INNER JOIN c
ON a.key = c.key
WHERE a.cnt <= 0;
希望这对您有所帮助。
关于sql - 有条件地从不同的表中选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50612672/