oracle 同列非數字字串的拼接

2021-06-03 00:58:05 字數 570 閱讀 7925

oracle 不支援wm_concat 的解決辦法

sys_region(id,name)

1    a

1    b

2    c

2    d

想要得到結果

1  a,b

2  c,d

這種需求其實可以用 wm_concat 這個方法來實現

也可以用自己寫的function

要是自己當前的資料庫不支援wm_concat 又不想自己寫function  那麼可以考慮用下面的方法來實現:

select id,substr(max(sys_connect_by_path(name,',')),2) name

from (select a.*,row_number()over(partition by id order by name) rn from sys_region a )

group by id

start with rn=1

connect by rn-1=prior rn and id=prior id

order by 1

1162 數字 字串

時間限制 1000 ms 記憶體限制 65535 kb 難度 0 描述 有一行數字 現在定義 0表示空格,即這行數字被分割成若干個數 要求將這些數按照從小到大順序排列,若該行數字全為零 則表示為零,兩個數字之間可能有多個0,開頭和結尾可能都有0,所有的0都看成空格,數字的個數不超過100。輸入輸入有...

數字字串問題

題目描述 輸入兩個很大的正數 用c字串表示 輸出他們的乘積。採用的方法可以模擬手工乘法 關鍵步驟 void multiply const char a,const char b for int i 0 i ca i for int j 0 j cb j s i j 1 a i 0 b j 0 for...

搭數字(字串)

搭數字 描述 搭出數字1需要兩個筷子,數字2需要5根筷子 現在就有疑問了,給定n 2 n 100 根筷子,那個可以組成的最大數是多少?輸入每行給定乙個筷子數量n 2 n 100 輸出每行輸出用這n根筷子所能組成的最大數字 輸入樣例 136 715輸出樣例 1 7111 7117111111 stri...