首頁 > 資料庫 > mysql教程 > 在 Oracle 中如何將多行組合成逗號分隔的清單?

在 Oracle 中如何將多行組合成逗號分隔的清單?

Linda Hamilton
發布: 2025-01-19 17:47:09
原創
653 人瀏覽過

How Can I Combine Multiple Rows into a Comma-Separated List in Oracle?

在Oracle資料庫中將多行合併為逗號分隔清單

在處理Oracle資料庫中的資料時,有時需要將多行資料合併成單一逗號分隔值 (CSV) 清單。可以使用內建函數,例如WM_CONCAT或LISTAGG來實現此任務。

WM_CONCAT函數在11.2版本之前的Oracle資料庫中可用,它提供了一種方便的連接值的方法。以下查詢示範了它的用法:

SELECT WM_CONCAT(table_name) FROM user_tables;
登入後複製

此查詢會擷取目前模式中所有表名的逗號分隔清單。

或者,在Oracle 11.2中引入的LISTAGG函數提供了更大的靈活性和控制能力。它允許指定分隔符,並對連接的值進行排序。以下是一個範例:

SELECT LISTAGG(table_name, ', ') WITHIN GROUP (ORDER BY table_name) FROM user_tables;
登入後複製

此查詢在使用逗號作為分隔符號連接表名前,會先依升序對表名進行排序。

透過使用WM_CONCAT或LISTAGG,開發人員可以輕鬆地將多行合併到單一CSV中,簡化資料操作並提高查詢效能。

以上是在 Oracle 中如何將多行組合成逗號分隔的清單?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板