-1
私はこれら2つのテーブルを持っていますが、結果を得るためにEMP_PHONE_IDを使って参加します。 JOIN条件はもう少しです 複雑ですが、これは単なるサンプルです。私は2つのテーブルを結合するとき、各EMP_IDが2つのEMP_PHONE_IDにマップするので、各EMP_ID に対して2行を取得しています。私は最終結果をPERMとTEMPの両方の値を組み合わせた単一の行にしたいと思います。SELECT文で複数の行を1行にまとめる
TABLE B
EMP_PHONE_ID || PERM_VALUE || TEMP_VALUE
1 || value1 || NULL
2 || NULL || value2
3 || value3 || NULL
4 || NULL || value4
TABLE A
EMP_ID ||EMP_PHONE_ID ||CODE
1 ||1 ||1
1 ||2 ||2
2 ||3 ||1
2 ||4 ||2
DESIRED RESULTS
EMP_ID || PERM_VALUE || TEMP_VAL
1 || value1 || value2
2 || value3 || value4
Here's my select
SELECT
CASE WHEN A.CODE = 1 THEN B.PERM_VALUE END AS PERM_VALUE1,
ASE WHEN A.CODE = 2 THEN B.PERM_VALUE END AS PERM_VALUE2
FROM TABLE A A, TABLE B B
WHERE A.EMP_PHONE_ID = B.EMP_PHONE_ID;
DESIRED RESULTS
EMP_ID || PERM_VALUE || TEMP_VAL
1 || value1 || value2
2 || value3 || value4
これは、PERM_VALUEが常にMINでTEMP_VALUEが常にMAXの場合に機能しますが、私の場合はこれらの値が異なり、行間でも一致します。 –
@ Mr.Maze - 私は 'Max'集計を使いませんでした。私は' Min'または 'Max'集計を意味しました。私は、 'TABLE A'の各' EMP_ID'に常に2つの関連する行があると考えています。 –
です。私はテーブルと、私が問題を反映するために使用しているクエリを洗練しました。 –