首頁 > 資料庫 > mysql教程 > 如何在 Oracle SQL 中連接多行的列值?

如何在 Oracle SQL 中連接多行的列值?

Patricia Arquette
發布: 2025-01-23 15:17:16
原創
399 人瀏覽過

How Can I Concatenate Column Values from Multiple Rows in Oracle SQL?

Oracle SQL:組合多行的欄位值

本指南示範了在 Oracle SQL 中連接多行列值的有效方法。 LISTAGG 函數提供了一個簡單的解:

<code class="language-sql">SELECT pid, LISTAGG(Desc, ' ') WITHIN GROUP (ORDER BY seq) AS description
FROM B GROUP BY pid;</code>
登入後複製

此查詢執行以下操作:

  1. pid分組:表格B中的行依pid欄位分組。
  2. 連接 Desc 值: LISTAGG 函數連接每個 Desc 群組的 pid 欄位中的值。 使用空格 (' ') 作為分隔符號。
  3. seq 排序: 每組內的串聯順序由 seq 欄位決定。
  4. 產生的 description 欄位: 每個 pid 群組的串聯字串將指派給 description 欄位。

要擷取特定的 pid 值,請將此結果集與表格 A 連接。

重要注意事項: LISTAGG 針對 VARCHAR2 欄位進行了最佳化。 對於其他資料類型,請探索替代的 Oracle 字串聚合技術。

以上是如何在 Oracle SQL 中連接多行的列值?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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