1、题目要求

为管理岗位业务培训信息,建立3个表:
S (S#,SN,SD,SA) S#,SN,SD,SA 分别代表学号、学员姓名、所属单位、学员年龄
C (C#,CN ) C#,CN 分别代表课程编号、课程名称
SC ( S#,C#,G ) S#,C#,G 分别代表学号、所选修的课程编号、学习成绩

  • 1.查询选修课程名称为’数学’的学员学号和姓名
  • 2.查询选修课程编号为’c002’的学员姓名和所属单位
  • 3.查询不选修课程编号为’c001’的学员姓名和所属单位
  • 4.查询选修全部课程的学员姓名和所属单位

2、建表语句

create table C
(
  c# ),
  cn )
)
;
comment on column C.c#
  is '课程编号';
comment on column C.cn
  is '课程名称';

create table S
(
  s# ),
  sd ),
  sn ),
  sa )
)
;
comment on column S.s#
  is '学号';
comment on column S.sd
  is '学员姓名';
comment on column S.sn
  is '所属单位';
comment on column S.sa
  is '学员年龄';

create table SC
(
  s# ),
  c# ),
  g  )
)
;
comment on column SC.s#
  is '学号';
comment on column SC.c#
  is '课程编号';
comment on column SC.g
  is '学习成绩';

insert into C (c#, cn)
values ('c001', '语文');
insert into C (c#, cn)
values ('c002', '数学');
insert into C (c#, cn)
values ('c003', '英语');
commit;

insert into S (s#, sd, sn, sa)
');
insert into S (s#, sd, sn, sa)
');
insert into S (s#, sd, sn, sa)
');
commit;

insert into SC (s#, c#, g)
');
insert into SC (s#, c#, g)
');
insert into SC (s#, c#, g)
');
insert into SC (s#, c#, g)
');
insert into SC (s#, c#, g)
');
insert into SC (s#, c#, g)
');
insert into SC (s#, c#, g)
');
insert into SC (s#, c#, g)
');
commit;

3、参考答案

--1.查询选修课程名称为’数学’的学员学号和姓名
select s.s#, s.sn
  from s, c, sc
 where s.s# = sc.s#
   and c.c# = sc.c#
   and c.cn = '数学'

--2.查询选修课程编号为’c002’的学员姓名和所属单位
select s.sn, s.sd
  from s, c, sc
 where s.s# = sc.s#
   and c.c# = sc.c#
   and c.c# = 'c002'
--3.查询不选修课程编号为’c001’的学员姓名和所属单位
select s.sn, s.sd
  from s
 where s.s# not in (select sc.s#
                      from sc, c
                     where sc.c# = c.c#
                       and c.c# = 'c001'
                       and s.s# = sc.s#)
--4.查询选修全部课程的学员姓名和所属单位
select s.sn, s.sd
  from s,
       (select sc.s#
          from sc
         group by sc.s#
        ) from C)) A
 where s.s# = A.s#

oracle面试题2的更多相关文章

  1. oracle 笔试题

    ORACLE笔试题一.单选题1.在Oracle中,以下不属于集合操作符的是( ). A. UNION B. SUM C. MINUS D. INTERSECT2.在Oracle中,执行下面的语句:SE ...

  2. 部分常见ORACLE面试题以及SQL注意事项

    部分常见ORACLE面试题以及SQL注意事项 一.表的创建: 一个通过单列外键联系起父表和子表的简单例子如下: CREATE TABLE parent(id INT NOT NULL, PRIMARY ...

  3. Oracle笔试题库 附参考答案

    1.  下列不属于ORACLE的逻辑结构的是(C) 区 段 数据文件 表空间 2. 下面哪个用户不是ORACLE缺省安装后就存在的用户(A) A . SYSDBA B. SYSTEM C. SCOTT ...

  4. 转://云和恩墨的两道Oracle面试题

    真题1. 对于一个NUMBER(1)的列,如果查询中的WHERE条件分别是大于3和大于等于4,那么这二者是否等价? 答案:首先对于查询结果而言,二者没有任何区别.从这一点上讲无论是指定大于3还是指定大 ...

  5. oracle sql试题

    转载 数据准备 create table student(  sno varchar2(10) primary key,  sname varchar2(20),  sage number(3),  ...

  6. 【Java EE 学习 28 下】【Oracle面试题2道】【Oracle练习题3道】

    一.已知程序和数据 create table test1 (id int primary key, name ), money int); ,); ,); ,); ,); 要求根据下图写出相应的sql ...

  7. oracle 面试题

    1.对数据库SQL2005.ORACLE熟悉吗?   SQL2005是微软公司的数据库产品.是一个RDBMS数据库,一般应用在一些中型数据库的应用,不能跨平台.   ORACLE是ORACLE公司的数 ...

  8. Oracle笔试题库之问答题篇-总共60道

    1.把表A从表空间TSP1更改成表空间TSP2的方法 解答:alter table A move tablespace TSP2 2.删除表的列: 解答:alert table 表名 drop 列名 ...

  9. Oracle面试题(基础篇)

    1. Oracle跟SQL Server 2005的区别? 宏观上: 1). 最大的区别在于平台,oracle可以运行在不同的平台上,sql server只能运行在windows平台上,由于windo ...

  10. Oracle面试题及答案整理

    一下题目根据此表变换 1.表:table1(FId,Fclass,Fscore),用最高效最简单的SQL列出各班成绩最高的列表,显示班级,成绩两个字段. select stu_class, max(s ...

随机推荐

  1. element-ui 中 table 鼠标悬停时背景颜色修改

    样式穿透: /deep/ .el-table tbody tr:hover>td { background-color: #颜色 }

  2. linux 打包与解压命令--常用

    一般情况用这俩个就足以了 压缩 tar -czf jpg.tar.gz *.jpg   //将目录里所有jpg文件打包成jpg.tar后,并且将其用gzip压缩,生成一个gzip压缩过的包,命名为jp ...

  3. SpringBoot-JPA入门

    SpringBoot-JPA入门 JPA就是Spring集成了hibernate感觉. 注解,方法仓库(顾名思义的方法,封装好了,还有自定义的方法). 案例: spring: datasource: ...

  4. CSS 实现居中 + 清除浮动

    一.水平居中 1.行内元素:text-align:center; 2.块级元素:margin:0 auto; 3.绝对定位和移动:absolute + transform 4.绝对定位和负边距:abs ...

  5. asp.net ListView控件的简单实用和配置

    1 web窗体界面代码 ItemType:控件要绑定的实体模型 SelectMethod:控件获取实体集合的后台方法 DataKeyNames:实体的主键 UpdateProduct:设置跟新的方法 ...

  6. FlowPortal BPM 安装环境的配置

    l  操作系统:Windows Server 2003 及以上: l  IIS: 在Internet信息服务(IIS)管理器中将ISAPI和CGI限制全部设为“允许” l  需要安装.Net Fram ...

  7. MongoDB——理论及使用命令详解 数据库

    数据存储阶段 文件管理阶段(.txt  .doc .xls) 优点: 1 使用简单,展现直观 2 可以长期保存数据 3 可存储数据量比较大 缺点: 1 查找不方便, 2 容易造成数据冗余, 3 格式不 ...

  8. php连接oracle oracle开启扩展

    <?php /** * 由于公司的需要,使用php+oracle开发项目,oracle因为有专门人员开发设计,我们只需远程调用 *于是乎遇到了蛋疼的问题就是开启oracle扩展的问题,虽然你在p ...

  9. Oralce问题之Oracle ORA-28001:某用户密码过期

    解决办法: (1).通过CMD打开命令行窗口,以sysdba连接数据库 SqlPlus / as sysdba (2).通过查询dba_user检查哪些用户过期 Sql>Select UserN ...

  10. C语言创建线程以及使用锁进行读写分离

    线程的使用 1.线程的创建 线程的相关操作放在<pthread.h>中. 1.1我们定义一个线程,首先要进行定义一个函数,类似我们创建一个a线程 void *thread_a(void * ...