2010-12-16 3 views
1

Field1でグループ化を行うOracleでのクエリがあります。この問合せは2行を戻しますが、row1のフィールド数は2です。私はrow1の単一のセルに両方のField1値を表示したいと思います。これは可能ですか?Oracleの行の値の連結

+0

Oracleには、連想配列の集合関数が組み込まれていません。これらの値が異なる場合、なぜそれらを同じ行に入れたいのですか? – kurosch

答えて

3

Tim Hallには、string aggregation techniquesという異なるコレクションがOracleで用意されています。 Oracleのバージョンによっては、組み込みのLISTAGG解析関数(11.2の場合)または以前のリリースのユーザー定義集約関数を使用するのが一般的です。 2の

+1

私は10gで自分自身を集めるのが部分的です。 – Dan

0

カウントがちょうどMIN(フィールド1)、簡単です||「」|| MAX(フィールド1)

あなたは異なって、同じ値を持つ2つの行に対応するために必要があります。

CASE MIN(field1)!= MAX(field1)THEN MIN(field1)|| '、' || MAX(field1)ELSE MIN(field1)END

0

小規模なストアドプロシージャを書くことは、数字とは独立した書式設定。他の答えはより良いかもしれませんが、PL/SQLに精通している方が早いです。