課程
/數(shù)據(jù)庫
/Oracle
/Oracle高級(jí)查詢
老師的最后一講的答案是什么啊,有點(diǎn)迷茫......
2015-08-18
源自:Oracle高級(jí)查詢 5-5
正在回答
select c.ci_id,max(x)
from
(select a.ci_id,wm_concat(case when instr(a.stu_ids,b.stu_id)> 0 then b.stu_name
end ) over(partition BY ?a.ci_id order by b.stu_id)x
from pm_ci a,pm_stu b)c
group by c.ci_id
但是這個(gè)wm_concat沒有排序怎么處理的
立志成為Oracle大神的男人
select ci.ci_id,to_char(wm_concat(stu.stu_name)) STU_NAME
from pm_ci ci, PM_STU stu
where instr(ci.stu_ids,stu.stu_id) > 0?
group by ci.ci_id
精簡(jiǎn):
SELECT?c.ci_id?,wm_concat(s.stu_name)?? ??FROM?pm_ci?c?,?pm_stu?s? ??WHERE?INSTR(c.stu_ids,s.stu_id)>0 ??GROUP?BY?c.ci_id;
得到的結(jié)果是一樣的。
第一步:利用instr為條件,多表連接查詢。
SELECT?c.ci_id,s.stu_name?FROM?pm_ci?c,pm_stu?s?WHERE?instr(c.stu_ids,s.stu_id)!=0;
運(yùn)行結(jié)果:
CI_ID ?STU_NAME
1???????? 張三
1???????? 李四
1 ????????王五
1 ????????趙六
2???????? 張三
2 ????????趙六
第二步:利用 wn_concat() 函數(shù) 和 GROUP BY ?重新組合字段
SELECT?c.ci_id,WM_CONCAT(c.stu_name) ?FROM(SELECT?c.ci_id,s.stu_name? FROM?pm_ci?c,pm_stu?s? ????????WHERE?INSTR(c.stu_ids,s.stu_id)!=0)?c ?GROUP?BY?c.CI_ID;
CI_ID???? WM_CONCAT(C.STU_NAME)
1 ????????? ?張三,趙六,王五,李四
2 ????????? ?張三,趙六
changeWorld 提問者
黃虎成
舉報(bào)
數(shù)據(jù)庫開發(fā)中應(yīng)用廣泛的高級(jí)查詢,本教程通過大量的案例詳細(xì)講解
2 回答求大神賜教
2 回答我想問一下大神們,where 后面不是不能和 組函數(shù)一塊使用嗎?
3 回答本節(jié)課后作業(yè),我的答案是:
2 回答練習(xí)題答案以及一些疑問
1 回答感謝大家學(xué)習(xí)我的課程
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號(hào)-11 京公網(wǎng)安備11010802030151號(hào)
購課補(bǔ)貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動(dòng)學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號(hào)
2016-06-04
select c.ci_id,max(x)
from
(select a.ci_id,wm_concat(case when instr(a.stu_ids,b.stu_id)> 0 then b.stu_name
end ) over(partition BY ?a.ci_id order by b.stu_id)x
from pm_ci a,pm_stu b)c
group by c.ci_id
2016-02-22
但是這個(gè)wm_concat沒有排序怎么處理的
2015-11-19
select ci.ci_id,to_char(wm_concat(stu.stu_name)) STU_NAME
from pm_ci ci, PM_STU stu
where instr(ci.stu_ids,stu.stu_id) > 0?
group by ci.ci_id
2015-09-19
精簡(jiǎn):
得到的結(jié)果是一樣的。
2015-09-19
第一步:利用instr為條件,多表連接查詢。
運(yùn)行結(jié)果:
CI_ID ?STU_NAME
1???????? 張三
1???????? 李四
1 ????????王五
1 ????????趙六
2???????? 張三
2 ????????趙六
第二步:利用 wn_concat() 函數(shù) 和 GROUP BY ?重新組合字段
運(yùn)行結(jié)果:
CI_ID???? WM_CONCAT(C.STU_NAME)
1 ????????? ?張三,趙六,王五,李四
2 ????????? ?張三,趙六