为了账号安全,请及时绑定邮箱和手机立即绑定

Oracle高级查询

注意连接条件,核心是将一张表当做多张表
讲得不错哈
select c.ci_id,wm_concat(s.stu_name) stu_name
from pm_ci c,pm_stu s
where instr(c.stu_ids,s.stu_id)>0
group by c.ci_id;
create table pm_stu
(stu_id varchar2(20) primary key,
stu_name varchar2(20));
insert into pm_stu values('1','张三');
insert into pm_stu values('2','李四');
insert into pm_stu values('3','王五');
insert into pm_stu values('4','赵六');
create table pm_ci
(ci_id varchar2(20) primary key,
stu_ids varchar2(100));
insert into pm_ci values('1','1,2,3,4');
insert into pm_ci values('2','1,4');
一开口就醉了
select t.ci_id,wm_concat(t.stu_name) stu_name
from
(select a.ci_id,replace(a.stu_ids,a.stu_ids,b.stu_name) stu_name
from pm_ci a,pm_stu b
where instr(a.stu_ids,b.id)>0 order by a.ci_id) t
group by t.ci_id;
上门课的女老师呢 她的课还没有听够呢
确实没有mysql方便
是学习来了还是听声音来了,不愿学哪凉快哪呆着
/*查询答案*/
select ci_id 课程编号,wm_concat(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)
group by ci_id;
/*建学生表*/
create table pm_stu(
stu_id varchar2(20) not null,
stu_name varchar2(20)
);
insert into pm_stu(stu_id,stu_name) values('1','张三');
insert into pm_stu(stu_id,stu_name) values('2','李四');
insert into pm_stu(stu_id,stu_name) values('3','王五');
insert into pm_stu(stu_id,stu_name) values('4','赵六');
/*创建课程信息表*/
create table pm_ci(
ci_id varchar2(20) not null,
stu_ids varchar2(100)
);
insert into pm_ci(ci_id,stu_ids) values('1','1,2,3,4');
insert into pm_ci(ci_id,stu_ids) values('2','1,4');
语气怪怪的,声音也很怪
这是哪里的方言??
课程须知
小伙伴们,学习本课程前需要掌握Oracle的语法基础,并且对Oracle的函数有所了解。如不了解这两部分内容,请移步《Oracle数据库开发必备利器之SQL基础》和《Oracle数据库开发利器之函数》两门教程。
老师告诉你能学到什么?
1、掌握分组查询 2、掌握多表查询 3、掌握子查询

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消