使用電影資料庫通常需要匯總每部電影的演員資訊。 這涉及將與單一影片關聯的多個演員姓名合併到單一列條目中。
PostgreSQL 提供了 string_agg()
函數,非常適合此任務。 這是示範其用法的查詢:
<code class="language-sql">SELECT movie, string_agg(actor, ', ') AS actors FROM tbl GROUP BY movie;</code>
此查詢:
movie
:指定儲存電影標題的欄位。 actor
:指定列出演員姓名的欄位。 string_agg(actor, ', ')
:此函數連接每部電影的演員姓名,並以逗號和空格分隔。 GROUP BY movie
:將結果分組,確保每部電影一行。 string_agg()
函數擅長將多行組合成單一字串值。 在這裡,它為每部電影創建一個以逗號分隔的演員清單。
對於排序的演員列表,請在 ORDER BY
中包含 string_agg()
子句:
<code class="language-sql">string_agg(actor, ', ' ORDER BY actor) AS actors</code>
但是,子查詢通常可以提供更好的排序效能。
string_agg()
的優點以上是如何在 SQL 中將每個影片的多個演員姓名合併到一個欄位中?的詳細內容。更多資訊請關注PHP中文網其他相關文章!