Oracle中如何有条件地选择列?

Nis*_*ant 1 sql oracle

我想从Oracle中选择一个数据。不过,我有一个专栏CHILD_IDN- 它决定哪一个专栏适合我。如果该列有一个 IDN,那么我需要CHILD从表中选择,否则默认情况下我应该选择PARENT. MSSQL 允许简单的 CASE 语句工作。但甲骨文呢?是否有 Oracle 与 MSSQL 兼容的查询?我认为它是非标准化数据,因此需要建议。

例如

TableA

1    PARENT  CHILD_IDN CHILD
2    Okay 
3    Cool    1         PickMe1 
4    Fine
5    Test
6    Bar     2         Pickme2
7    Hello   


Now the result expected is 

Okay 
PickMe1
Fine
Test
Pickme2
Hellow
Run Code Online (Sandbox Code Playgroud)

Dba*_*Dba 5

您也可以在 Oracle 中使用CASE语句。喜欢,

SELECT CASE WHEN child_idn IS NOT NULL THEN child 
       ELSE parent 
       END
FROM   tableA;
Run Code Online (Sandbox Code Playgroud)