sql >> データベース >  >> RDS >> Oracle

ストアドプロシージャを作成せずに、Oracleで複数の行を1つに連結するにはどうすればよいですか?

    Oracle 11gR2から、LISTAGG句でうまくいくはずです:

    SELECT question_id,
           LISTAGG(element_id, ',') WITHIN GROUP (ORDER BY element_id)
    FROM YOUR_TABLE
    GROUP BY question_id;
    

    結果の文字列が大きすぎる場合(たとえば、VARCHAR2の場合は4000文字を超える場合)に注意してください。バージョン12cR2から、ON OVERFLOW TRUNCATE/ERRORを使用してこの問題に対処できます。



    1. PerconaXtraDBクラスターの監視-主要な指標

    2. Oracle ForUserSecurityでのプロファイルの作成

    3. Linuxサーバーに複数のMySQLインスタンスをインストールします-別のMySQL構成ファイルを使用します

    4. mysqli_query()は、少なくとも2つのパラメーターを想定しています。1つは?