解决方案 »
- oracle 数据并发问题
- 急急急!Oracle forms 的Text Item 的属性如何设置成只能入力半角英数
- check约束能加if条件的吗???
- 求触发器写法!在a表插入数据后在b表也插入对应数据
- dbms_job的问题
- 行转成列,用动态SQL 语句,Score是不定数的
- 这个sql2000中的查询在oracle中怎么写?
- 在PL/SQL如何得到汉字的全拼
- 高分相送!急用!!在线等待!
- 我在用Oracle Enterprise Manager Console 时执行导出操作为什么总报错:VNI-2015
- Oracle ORA-06576: 不是有效的函数或过程名
- 感觉使用存储过程没有加快查询的速度,各位大侠能帮忙说一下原因吗
b2.名称 as 考试成绩
b3.名称 as 考生
c.名称 as 考试标题
from a
inner join b b1 on a.考试科目=b1.状态id and
inner join b b2 on a.考试成绩=b2.状态id and
inner join b b3 on a.考生=b3.状态id and
inner join c on c.类型id=b1.类型id
where 自己添加条件
建这么3张表吧:
create table A(
calss_id varchar2(10),--考试科目
score varchar2(10),--考试成绩
stu_id varchar2(10),--考生
title varchar2(40) --考试标题
);
create table B(
type varchar2(10),--类型id
state varchar2(10),--状态id
state_name varchar2(10)--名称
);
create table C(
type varchar2(10),--类型id
type_name varchar2(10)--名称
);
注:实际查询的时候C表是多余的。sql语句为:select
t1.state_name class_name,t2.state_name score,t3.state_name student_name,t.title
from A t
left join B t1 on t1.type=1 and t.calss_id=t1.state
left join B t2 on t2.type=2 and t.score=t2.state
left join B t3 on t3.type=3 and t.stu_id=t3.state
order by class_name,score,student_name