我的客戶正在使用DB2數據庫,而不LISTAGG功能,但我需要以某種方式聚集一個區域內的主鍵信息。LISTAGG替代在DB2
現在右(甲骨文)我用這作爲更大查詢的一部分:
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
它還有另一種方式DB2之前得到LISTAGG功能的結果DB2數據庫版本9.7修訂包4 1?
我的客戶的數據庫版本: - Linux企業服務器版本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
我回到這個function list,但也有在回答替代解決方案下提到像XMLTEXT或xmlgroup沒有功能:( 什麼尼安德特數據庫客戶使用?還是我失去了一些東西?
感謝您的答覆。
看看[此解決方法](https://www.ibm.com/developerworks/mydeveloperworks/blogs/SQLTips4DB2LUW/entry/aggregating_strings42?lang = en)符合您的需求。 –
您正在使用哪個DB2服務器:DB2 for i,LUW或z/OS?哪個版本?不同的DB2平臺具有不同的內置函數集。 – WarrenT
更新了版本信息和功能列表的問題。 –