1
複数の結合ステートメントを使用して2つのSQLクエリを作成しました。2つのSQLクエリを1つにまとめて、重複列を削除します。
ここで、両方のクエリ結果を以下のように組み合わせたいと思います。 最初のクエリは、2番目のクエリは、これらの列のクエリUDC_ID
とEXT_ID
列の両方において
UDC_ID, EXT_ID, VALUE
が同じであるが、それぞれにVALUE
列は異なる
で示す
UDC_ID, EXT_ID, VALUE
これらの列を示しています最終的な出力は、
UDC_ID, EXT_ID, VALUE (From Query1), VALUE (from Query 2)
です。
これはどのように達成することができますか?
これらは私のクエリです:
クエリ1は、3つのテーブル結合します
SELECT
DEV.UDC_ID,
SR.EXT_ID,
SRA.VALUE
FROM SERVICE_REQUEST SR
JOIN DEVICE DEV
ON SR.DEVICE_ID = DEV.ID
JOIN SERVICE_REQUEST_ATTR SRA
ON SR.ID = SERVICE_REQUEST_ID
WHERE SR.SUB_TYPE_CD = 'HMI_22'
--AND DEV.SUB_TYPE = 'ESME'
AND SRA.NAME = 'CommsHubGUID'
AND SR.INSERT_TIME >= TO_DATE('2016-09-21 00:00:00', 'YYYY-MM-DD HH24:MI:SS')
AND SR.INSERT_TIME <= TO_DATE('2016-09-28 00:00:00', 'YYYY-MM-DD HH24:MI:SS')
ORDER BY SR.INSERT_TIME DESC;
クエリ1との違いをして、このクエリは、そうでない場合は、クエリの両方が同じである、SRA.NAME
フィールドのwhere句の基準です。
SELECT
DEV.UDC_ID,
SR.EXT_ID,
SRA.VALUE
FROM SERVICE_REQUEST SR
JOIN DEVICE DEV
ON SR.DEVICE_ID = DEV.ID`enter code here`
JOIN SERVICE_REQUEST_ATTR SRA
ON SR.ID = SERVICE_REQUEST_ID
WHERE SR.SUB_TYPE_CD = 'HMI_22'
--AND DEV.SUB_TYPE = 'ESME'
AND SRA.NAME = 'Service Location'
AND SR.INSERT_TIME >= TO_DATE('2016-09-21 00:00:00', 'YYYY-MM-DD HH24:MI:SS')
AND SR.INSERT_TIME <= TO_DATE('2016-09-28 00:00:00', 'YYYY-MM-DD HH24:MI:SS')
ORDER BY SR.INSERT_TIME DESC