2016-10-31 8 views
4

私は条件I.eで階層クエリを書く必要があります。条件が真であれば、前の節で接続で特定の列を使用し、偽であれば他のいくつかの列を節に入れる必要があります。条件によって前に接続してください

擬似コード ...

If col1 is not null then 
    Connect by prior col1=col1 
Else 
    Connect by prior col2=col2 
... 

はPLSQLで可能なこのようなものですか?

答えて

1
あなただけの適切な条件をカプセル化する必要があり

connect by (col1 is not null and prior col1=col1) 
    or (col1 is null and prior col2=col2) 
4

CASE EXPRESSION試してみてください。

CONNECT BY PRIOR CASE WHEN col1 IS NOT NULL THEN col1 ELSE col2 END 
       = CASE WHEN col1 IS NOT NULL THEN col1 ELSE col2 END 
+0

- 私はちょうどあなたが無限の土地をaswellかもしれないprior' 'ここで選択しなくても、その追加しますか? (本当に確かではない) – SomeJavaGuy

関連する問題