一、sql概述和数据定义
1、【单选题】
create user A
identified by B
default tablespace C
temporary tablespace D;
上述oracle数据库查询语句中A、B、C、D分别代表:
正确答案: A
2、【单选题】下表为患者缴费记录,现需要在oracle数据库创建表,将缴费记录数据无损导入创建表中,创建表的语句应为:
正确答案: C
3、【多选题】下列哪些属于sql语言的特点
正确答案: BD
二、单表查询
1、【单选题】下表为患者就诊记录,表名为clinic_master,主码为{就诊日期、上下午、接诊医生、身份证号},查询2022年9月12日有多少患者到医院就诊的语句为
正确答案: C
答案解析:表中姓名张三有重名,对于了2个身份证号。身份证号能够标识唯一患者。
2、【多选题】下表为患者就诊记录,表名为clinic_master,主码为{就诊日期、上下午、接诊医生、身份证号},查询2022年9月12日到9月13日多次就诊的患者姓名和身份证号,查询语句为:
正确答案: BC
答案解析:count()聚合结果限定条件要用having,不能用where。count()当括号中没有distinct时,count(1)、count(*)和count(列名)是等价的。注意where条件就诊日期是12和13日。
3、【多选题】下表为患者就诊记录,表名为clinic_master,主码为{就诊日期、上下午、接诊医生、身份证号},查询2022年9月12日到9月13日,李医生和陈医生接诊的患者姓名和身份证号,查询语句为
正确答案: BC
答案解析:distinct跟group by能够实现相同功能。and的优先级大于or。
三、多表查询
1、【单选题】
下表为患者住院信息表pat_visit,主码为{患者id,住院次数}。
SELECT a.患者id,b.主治医师
from pat_visit a,
pat_visit b
WHERE a.patient_id = b.patient_id
AND a.visit_id = b.visit_id + 1;
以上查询语句的含义为:
正确答案: A
2、【单选题】
下表为患者住院信息表pat_visit,主码为{患者id,住院次数}。
SELECT a.患者id,b.主治医师
from pat_visit a,
pat_visit b
WHERE a.patient_id = b.patient_id
AND a.visit_id = b.visit_id + 1;
以上查询语句的结果为:
正确答案: A
3、【单选题】
下表为患者住院信息表pat_visit,主码为{患者id,住院次数}。
SELECT a.患者id,b.主治医师
from pat_visit a
left join pat_visit b on a.patient_id = b.patient_id AND a.visit_id = b.visit_id + 1;
以上查询语句的结果为:
正确答案: B
4、【多选题】
下表为患者住院信息表pat_visit,主码为{患者id,住院次数}。
SELECT a.患者id,a.住院次数
from pat_visit a
where a.患者id in
(select b.主治医师 from pat_visit b where b.患者id = '100000003');
以上查询语句的等价语句为:
正确答案: AC
四、数据更新和空值处理
1、【多选题】下表为学生用品重量表:O_W,物品名称数据类型为varchar2(8),类型的数据类型为varchar2(1),重量克的数据量类型为number(5,1),物品名称为主码。将数据物品名称为水杯,类型为2,重量为300克的水杯信息插入表中,正确的语句为:
正确答案: BCD
2、【多选题】下表为学生用品重量表:O_W和物品类型字典表T_D。用品重量表中物品名称数据类型为varchar2(8),类型的数据类型为varchar2(1),重量克的数据量类型为number(5,1),物品名称为主码,类型为外码,对应参考表物品类型字典表类型代码。下列语句能够正常执行的是:
正确答案: BD
答案解析:一次性水杯为5个汉字,10个字节,超过最大限制,违反用户自定义完整性。类型 = ‘4’违反参考完整性。重量克 = '100.36',更够正常更新,更新后的结果为100.4。
3、【多选题】下表为人员信息表STAFF_DICT和防疫课程学习表S_D,政策要求所有人都要完成所有的防疫课程,其中通用知识课程有7节,政策要求课程有7节。现要查询所有未为完成防疫课程学习的人员姓名,能够满足此查询要求的语句为:
正确答案: AD
五、视图
1、【多选题】
下表为学生用品重量表:O_W,物品名称数据类型为varchar2(8),类型的数据类型为varchar2(1),重量克的数据量类型为number(5,1)。物品名称为主码。现创建一个视图,语句为:
create view V_O as
select 物品名称,
from O_W
where 类型 = '1';
下列语句能够正常运行的有:
我的答案:ABC
2、【多选题】dept_dict为科室字典,dept_code为主码,dept_name为科室名称。下列视图,哪些视图不能插入和修改数据:
我的答案:BD