私の顧客は listagg 関数なしで db2 データベースを使用していますが、1 つのフィールド内の主キー情報を何らかの方法で集約する必要があります。
現在(Oracleの場合)、これをより大きなクエリの一部として使用しています:
SELECT LISTAGG(COLUMN_NAME || ':' || CONTENT, ',')
WITHIN GROUP (ORDER BY COLUMN_NAME || ':' || CONTENT)
FROM TABLE
WHERE ROW_IDENTIFIER_ID = I.REC_ID AND I.TABLE_RESULT_ID = T.REC_ID
バージョン 9.7 フィックスパック 4 1より前の DB2 データベースで listagg 関数の結果を取得する別の方法はありますか?
私の顧客のデータベースのバージョン: Linux - Enterprise server edition 9.7、リリース番号 08060107
これらの選択を実行して取得しました:
SELECT * FROM TABLE(SYSPROC.ENV_GET_INST_INFO()) AS SYSTEMINFO;
SELECT * FROM TABLE(SYSPROC.ENV_GET_PROD_INFO()) AS SYSTEMINFO;
SELECT * FROM TABLE(SYSPROC.ENV_GET_SYS_INFO()) AS SYSTEMINFO;
私は理解していないことを認めます、どうして9.7になることができますが、listagg機能はありませんか?! :混乱している:
私も実行しました:
SELECT * FROM SYSCAT.FUNCTIONS
私はこの機能リストを取り戻しましたが、回答の代替ソリューションで言及されている xmltext や xmlgroup のような機能はありません:(.顧客が使用しているネアンデルタール人のデータベースは何ですか?それとも何か不足していますか?
回答ありがとうございます。