首頁 >資料庫 >mysql教程 >如何在 PostgreSQL SELECT 查詢中連接字串列?

如何在 PostgreSQL SELECT 查詢中連接字串列?

Linda Hamilton
Linda Hamilton原創
2025-01-12 10:28:43510瀏覽

How to Concatenate String Columns in PostgreSQL SELECT Queries?

在PostgreSQL SELECT 查詢中連接字串列

在PostgreSQL中,直接在SELECT查詢中連接字串列並非易事。考慮以下範例:

<code class="language-sql">select a || b from foo;</code>

其中a和b是character(2)型別的欄位。這將傳回NULL,而不是預期中的a和b值的連線結果。

連接字串列最簡單的解決方案是將至少一列強制轉換為text類型:

<code class="language-sql">SELECT a::text || b AS ab FROM foo;</code>

或者,您可以使用concat_ws()函數,它可以接受任意數量的參數並忽略NULL值:

<code class="language-sql">SELECT concat_ws(', ', a, b) AS ab FROM foo;</code>

如果您不需要分隔符,可以使用concat()函數:

<code class="language-sql">SELECT concat(a, b) AS ab FROM foo;</code>

concat()concat_ws()都是易變函數,因此不適合用於索引或產生的欄位。如果需要不變性,您可以建立一個自訂的不變函數。

請注意, 運算子在Postgres中不是有效的字串連接運算子。它是Microsoft在其產品中特有的添加。

以上是如何在 PostgreSQL SELECT 查詢中連接字串列?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn