在 Oracle SQL 中將多行合併為一行
Oracle SQL 提供了多種將多行合併為一行的方法。 一種方法使用 WM_CONCAT
函數(注意:在 Oracle 12c 及更高版本中已棄用)。 WM_CONCAT
連接特定欄位中多行的值:
<code class="language-sql">SELECT field1, WM_CONCAT(field2) FROM YourTable GROUP BY field1;</code>
對於 WM_CONCAT
不可用的 Oracle 版本,自訂聚合函數提供了可行的解決方案。 有關建立此類字串聚合函數的詳細指南可以在 Oracle-base.com 等資源中找到。 一個基本範例:
<code class="language-sql">CREATE FUNCTION String_Agg(VALUES VARCHAR2, DELIM VARCHAR2) RETURN VARCHAR2; -- Function implementation details here</code>
此自訂函數允許字串值聚合:
<code class="language-sql">SELECT field1, String_Agg(field2, ',') FROM YourTable GROUP BY field1;</code>
WM_CONCAT
(如果適用)和自訂聚合函數都可以有效地將多行合併為一行,以更簡潔、更有組織的方式呈現資料。
以上是如何在 Oracle SQL 中將多行聚合為單行?的詳細內容。更多資訊請關注PHP中文網其他相關文章!