問題:在開發過程中需要實現以下效果
1 a
1 b
------>
1 a,b,c
1 c
1.oracle 10以上可以使用wmsys.wm_concat函式,相當easy
2.如果oracle是9以下,則用procedure或function實現
3.純sql實現:(oracle9及以上 由於有 sys_connect_by_path函式)
select repair_rec_sys_id, translate (ltrim (text, '/'), '*/', '*,') researcherlist
from (select row_number () over (partition by repair_rec_sys_id order by repair_rec_sys_id,
lvl desc) rn,
repair_rec_sys_id, text
from (select
repair_rec_sys_id, level lvl,
sys_connect_by_path (good_part,'/') text
from (select repair_rec_sys_id, good_part as good_part,
row_number () over (partition by repair_rec_sys_id order by repair_rec_sys_id,good_part) x
from repair_repl_detail
order by repair_rec_sys_id, good_part) a
connect by repair_rec_sys_id = prior repair_rec_sys_id and x - 1 = prior x))
where rn = 1
order by repair_rec_sys_id
repair_rec_sys_id:你需要合併的參照字段
good_part:需要合併的字段
repair_repl_detail:表名
ORACLE純SQL實現多行合併一行
專案中遇到乙個需求,需要將多行合併為一行。表結構如下 name null type n sec code not null char 6 c researcher code not null varchar2 20 此表儲存了 與 研究員 的對應關係資料,一般而言,對於同一只 而言,可能有多個研究員...
純js實現多行文字溢位隱藏並顯示省略號
使用html2canvas生成時,用css控制超出行數隱藏並顯示省略號無效,可以通過js實現。text v text posteraddress style line height 24px div this overflowhidden text 2 我是顯示的文字引數 第乙個引數是元素id,第二...
oracle排序並分頁sql語句
因為oracle沒有mysql的limit的語法,因此排序和分頁不能方便的完成,但是通過三次巢狀查詢可以達到同樣的功能 selecttemp2.from select rownum num,temp1.from select fields we want from table order by fi...