合併兩行資料並以逗號展示

2021-09-17 20:29:15 字數 945 閱讀 8287

1、正常情況下的sql以及表

上圖明顯有兩處可以合併的記錄

2、解決方案

①oracle資料庫寫法

在oracle11g以及其以後的版本中可以使用listagg函式,如下即可解決:

②mysql資料庫寫法:使用group_conncat方法

select organ_type, max(type_name) as type_name, max(parent_type) as parent_type, max(parent_name) as parent_name,

group_concat(target_ref separator ',') as child_id,

group_concat(child_name separator ',') as child_name

from pub_organ_type_view

where 1 = 1

and length(organ_type) = 1

group by organ_type

ODPS 將列中逗號分隔的資料展示為多行資料

odps 中有的列有資料是逗號分隔的資料,需要轉化為多行資料,方便與其他表關聯查詢。效果如下 原表err code desc cn chans st001 簽名匹配失敗 1,2,3 結果表err code desc cn chan st001 簽名匹配失敗 1st001 簽名匹配失敗 2st001 ...

sql裡將重複行資料合併為一行,資料用逗號分隔

一.定義表變數 declare t1 table userid int username nvarchar 50 cityname nvarchar 50 insert into t1 userid,username,cityname values 1,a 上海 insert into t1 use...

sql裡將重複行資料合併為一行,資料用逗號分隔

一.定義表變數 declare t1 table userid int username nvarchar 50 cityname nvarchar 50 insert into t1 userid,username,cityname values 1,a 上海 insert into t1 use...