ここでは、3つの異なるサブクエリを同じテーブルから3つの異なる列に分配する1つのサブクエリに変換しようとしています。同じテーブルの複数のサブクエリを1つのクエリに変換する
可能ですか?これは、Oracle
で達成できることができますPI_NO || con_date(45) || subjvis(46) || initDate(47)
----------------------------------------
1234 || 14-DEC-2017 || 12-DEC-2017||15-DEC-2017
を: 私の実際のクエリは、この
select tu.pi_no, (SELECT pu_DATE
FROM tabl1
WHERE pi_no = tu.pi_no
AND si_no IN(45,46,47)
)
from public tu;
は、出力は次のようになりたい好きに変換したい---
select p.pi_no,(SELECT pu_DATE
FROM tabl1
WHERE pi_no = p.pi_no
AND si_no = 45
) AS con_date,
(SELECT pu_DATE
FROM tabl1
WHERE pi_no = p.pi_no
AND si_no = 46
) AS subjvis,
(SELECT pu_DATE
FROM tabl1
WHERE pi_no = p.pi_no
AND event_no = 47
) AS initDate
from public p;
です
あなたは 'public'と' tabl1'のテーブルを結合しようとしていますか?もしそうなら、どのフィールドに参加していますか? – Vashi
@Vashi 'pi_no = p.pi_no'に基づいて結合しようとしています。 PI_NOはpublicとtabl1で利用可能です。 –
この最後のスカラークエリは、この条件、 'AND event_no = 47'を持ちます。これは、「AND si_no = 47」とされていますか? –