主頁 > 知識庫 > postgresql 實現將數組變?yōu)樾?/div>

postgresql 實現將數組變?yōu)樾?/h1>

熱門標簽:濟南外呼網絡電話線路 天津開發(fā)區(qū)地圖標注app 江蘇400電話辦理官方 電銷機器人能補救房產中介嗎 電話機器人怎么換人工座席 移動外呼系統模擬題 廣州電銷機器人公司招聘 地圖標注要花多少錢 400電話申請客服

有的時候需要把數組元素同表中的字段進行關系運算,首先得把array變?yōu)橛涗浶?/p>

SELECT "unnest"(array[1,2,3])

結果:
unnest

求數組交集:

SELECT "unnest"(array[1,2,3]) INTERSECT SELECT "unnest"(array[3,4,5]) 

結果:
unnest
3

補充:PostgreSQL單列多行變一行一行變多行

工作中經常遇到這樣一個場景,希望將某個字斷查詢出得結果組合成為一個字符串,用逗號分割(或者分號),通過PG中的函數該如何實現?

多行變一行

實例表:

想要的結果:

方法一:string_agg(字段名,分隔符)

select id,string_agg(name,',') AS NAME_NEW from test
group by 1
ORDER BY 1

方法二:array_agg(字段名)

select id,array_agg(name)
AS NAME_NEW from test
group by 1
ORDER BY 1;

select id,array_to_string(array_agg(name),',')
AS NAME_NEW from test
group by 1
ORDER BY 1;

另外:array_agg(distinct(字段名)) 拼接唯一的字段。

一行變多行

select id,regexp_split_to_table(name_new,',')
AS NAME from test;

select id,unnest(string_to_array(name_new,','))
AS NAME from test;

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。

您可能感興趣的文章:
  • 淺談PostgreSQL中大小寫不敏感問題
  • PostgreSQL LIKE 大小寫實例
  • Postgresql 數據庫轉義字符操作
  • postgresql~*符號的含義及用法說明
  • postgresql數據庫使用說明_實現時間范圍查詢
  • 基于PostgreSql 別名區(qū)分大小寫的問題

標簽:杭州 海西 昭通 辛集 寶雞 溫州 榆林 濮陽

巨人網絡通訊聲明:本文標題《postgresql 實現將數組變?yōu)樾小罚疚年P鍵詞  postgresql,實,現將,數組,變?yōu)?;如發(fā)現本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《postgresql 實現將數組變?yōu)樾小废嚓P的同類信息!
  • 本頁收集關于postgresql 實現將數組變?yōu)樾械南嚓P信息資訊供網民參考!
  • 推薦文章