0

次のレコードを持つpostgres DBに2つのテーブルがあります-:

TableA
======
ID       DESC          TEAM       STATUS
254      NSW emp       Sales        A
365      NSW,VIC emp   Sales        L
2345     NSW emp       Post Sales   A
...........
.....



TableB
======
ID      STATE
254     NSW
365     NSW
365     VIC
365     QLD
2345    NT
2345    NSW
...........

ID, DESC, STATUS and STATE一意の ID ごとに 2 つのテーブルから選択し、次の形式で出力をキャプチャします。

ID       DESC        STATUS      STATE
254      NSW emp       A          NSW
365      NSW,VIC emp   L          NSW,VIC,QLD
2345     NSW emp       A          NT,NSW
.........

SELECT ステートメントを JOIN/INTERSECT および SELECT ARRAY(.......) と共に使用しようとしましたが、これは「各 INTERSECT クエリには同じ数の列が必要です」で失敗します

任意のアイデアをいただければ幸いです?

4

1 に答える 1

0
SELECT TABLEA.ID,
       DESCR,
       TEAM,
       STATUS,
       array_agg(STATE) 
       FROM TABLEA 
        inner join TABLEB
          ON TABLEA.ID = TABLEB.ID 
       GROUP BY TABLEA.ID,DESCR,TEAM,STATUS
于 2013-07-06T18:04:15.287 に答える