第四章 查询操作
选择:
1、应使用以下哪个组函数来显示“雇员”表中的最高薪金值?
A. AVG B. COUNT C. MAX D. MIN
正确答案是: C 你选择的答案是:未选 判题结果:×
2、转换日期类型为字符串的转换函数是( )。
A. to_date B. to_datetime C. to_char D. to_number
正确答案是: C 你选择的答案是:未选 判题结果:×
3、下列正确查询姓张的学生的语句是( )。
A. select * from 表名 where 姓名 = ‘张’
B. select * from 表名 where 姓名 like ‘张%’
C. select * from 表名 where 姓名 = ‘%张%’
D. select * from 表名 where 姓名 like ‘张’
正确答案是: B 你选择的答案是:未选 判题结果:×
4、查询出EMP表中1982年及以后入职的员工信息(注:字段hiredate为入职日期,数据类型为DATE型)
A. select * from emp where hiredate>='19820101';
B. select * from emp where hiredate>=to_char('19820101','YYYYMMDD');
C. select * from emp where to_date(hiredate,'YYYYMMDD')>='19820101';
D. select * from emp where to_char(hiredate,'YYYYMMDD')>='19820101';
正确答案是: A 你选择的答案是:未选 判题结果:×
5、在PL/SQL中用以下哪个运算符或函数,可以将两个字符串连接起来
A. strcat
B. +
C. ||
D. stradd
正确答案是: C 你选择的答案是:未选 判题结果:×
6、emp表是雇员信息表,sal字段存放是的雇员的月薪
以下哪个变量可以存放sal类型的值
A. v_sal emp%rowtype;
B. v_sal emp.sal%type;
C. v_sal emp.sal.%type;
D. v_sal %type(emp.sal);
正确答案是: B 你选择的答案是:未选 判题结果:×
7、emp表是雇员信息表,以下哪个变量可以存放emp表中的一条记录
A. v_record emp%type;
B. v_record emp%recordtype;
C. v_record emp%record_type;
D. v_record emp%rowtype;
正确答案是: D 你选择的答案是:未选 判题结果:×
8、下面四个语句中哪一个是正确的?( )
A.SELECT * , ENAME FROM EMP;
B.DELETE * FROM EMP;
C.SELECT DISTINCT EMPNO ,HIREDATE FROM EMP;
D.SELECT ENAME|SAL AS “name” FROM EMP ;
正确答案是: C 你选择的答案是:未选 判题结果:×
9、下列哪个是组合主键的特征( )
A.每列有唯一的值,但不是NULL值
B.组合有唯一的值,并且其中每列没有NULL值
C.组合的第一列和最后一列有唯一值
D.组合的第一列和最后一列有唯一值,但没有NULL值
正确答案是: B 你选择的答案是:未选 判题结果:×
10、以下 SQL 语句将返回什么结果?
SELECT COUNT(DISTINCT 薪金) FROM 雇员;
A. 雇员表中所有唯一薪金的列表 B. 雇员表中的薪金总额
C. 雇员表中的总行数 D. 雇员表中的唯一薪金的数量
正确答案是: D 你选择的答案是:未选 判题结果:×
11、在Oracle中,有一个教师表teacher的结构如下:
ID NUMBER(5)
NAME VARCHAR2(25)
EMAIL VARCHAR2(50)
下面哪个语句显示没有Email地址的教师姓名()。
A.SELECT name FROM teacher WHERE email = NULL;
B.SELECT name FROM teacher WHERE email <> NULL;
C.SELECT name FROM teacher WHERE email IS NULL;
D.SELECT name FROM teacher WHERE email IS NOT NULL;
正确答案是: C 你选择的答案是:未选 判题结果:×
12、关于通配符中的“%”,以下说法正确的两项是( )。
A. 代表任意一个字符,与Like结合使用
B. 代表任意多个字符,与Like结合使用
C. 代表任意一个字符,在Like后的表达式中只能使用一次“%”
D. 代表任意多个字符,在Like后的表达式中不可以使用多次“%”
正确答案是: B 你选择的答案是:未选 判题结果:×
13、查询出所有名字以'S'开始的员工( )
A. select * from emp where ename in 'S%';
B. select * from emp where ename='S%';
C. select * from emp where ename like 'S%';
D. select * from emp where ename like 'S_';
正确答案是: C 你选择的答案是:未选 判题结果:×
14、语句SELECT * FROM dept WHERE NOT EXISTS (SELECT * FROM emp WHERE deptno=dept.deptno)执行后的结果为( )
A.只显示存在于EMP表中的部门全部信息。
B.只显示不存在于EMP表中的部门全部信息
C.未返回任何数据
D.显示DEPT表中的全部信息
正确答案是: B 你选择的答案是:未选 判题结果:×
15、在Oracle中,下面用于限制分组函数的返回值的子句是()。
A.WHERE
B.HAVING
C.ORDER BY
D.无法限定分组函数的返回值
正确答案是: B 你选择的答案是:未选 判题结果:×
16、对于以下SQL语句说法正确的是
SELECT ename FROM emp
WHERE sal IN (SELECT MAX(sal)
FROM emp GROUP BY deptno);
A. 这个语句是符合语法的
B. 这个语句是不能执行的,因为缺少HAVING子句
C. 这个语句是不能执行的,因为分组的条件列不在SELECT列表中
D. 这个语句是不能执行的,因为GROUP BY子句应该在主查询中,而不是在子查询中
正确答案是: A 你选择的答案是:未选 判题结果:×
17、( )子句用于列出唯一值。
A.unique B.distinct C.order by D.group by
正确答案是: B 你选择的答案是:未选 判题结果:×
18、下面哪一个语句可以使用子查询( )
A.SELECT 语句 B.UPDATE语句
C.DELETE语句 D.以上都是
正确答案是: D 你选择的答案是:未选 判题结果:×
19、列出EMP表中,从事每个工种(JOB)的员工人数( )
A. select job from emp;
B. select job,count(*) from emp;
C. select distinct job,count(*) from emp;
D. select job,count(*) from emp group by job;
正确答案是: D 你选择的答案是:未选 判题结果:×
20、查询出EMP表中COMM字段为空的记录( )
A. select * from emp where comm='';
B. select * from emp where comm=null;
C. select * from emp where nvl(comm)=0;
D. select * from emp where comm is null;
正确答案是: D 你选择的答案是:未选 判题结果:×
21、哪一个是子查询执行的顺序( )
A.最里面的查询到最外面的查询
B.最外面的查询到最里面的查询
C.简单查询到复杂查询
D.复杂查询到简单查询
正确答案是: A 你选择的答案是:未选 判题结果:×
22、数据库中有两个用户scott和myuser,物资表wz是属于myuser用户的,但当前用户是scott,要求查询物资表wz(wno,wname,wtype,wunit)物资单位wunit列为null的记录,取结果的前5条记录显示,以下正确的SQL语句是( )
A.select*from scott.wz where wunit is null and rownum<5;
B.select*from myuser.wz where wunit = null and rownum<5;
C.select*from myuser.wz where wunit is null and rownum<6;
D.select*form scott.wz where wunit is null and rownum<6;
正确答案是: C 你选择的答案是:未选 判题结果:×
23、 要求查询物资表wz(wno,wname,wtype,wunit)物资单位wunit列为null的记录,取结果的前5条记录显示,以下正确的SQL语句是( )
A.select * from wz where wunit is null limit 0,5;
B.select * from wz where wunit = null limit 0,5;
C.select * from wz where wunit is null limit 1,5;
D.select * form wz where wunit = null limit 1,5;
正确答案是: A 你选择的答案是:C 判题结果:×
24、使用以下哪个函数可返回月份中的最大日期?
A. END_DAY B. FINAL_DAY C. HIGHEST_DAY D. LAST_DAY
正确答案是: D 你选择的答案是:未选 判题结果:×
25、要统计某表中记录的总个数,以下哪项是正确的SQL语句( )。
A. select Max(*) from 表名
B. select Sum(*) from 表名
C. select Count(*) from 表名
D. select Min(*) from 表名
正确答案是: C 你选择的答案是:未选 判题结果:×
26、查询出当前的数据库系统时间,精确到秒( )
A. select to_date(sysdate,'YYYY-MM-DD HH24:MI:SS') from dual;
B. select to_char(sysdate,'YYYY-MM-DD HH24:MI:SS') from dual;
C. select date(sysdate,'YYYY-MM-DD HH24:MI:SS') from dual;
D. select chr(sysdate,'YYYY-MM-DD HH24:MI:SS') from dual;
正确答案是: B 你选择的答案是:未选 判题结果:×
27、 查询出当前的日期,可以用下面哪个选项( )
A. select curdate();
B. select to_char(sysdate,'YYYY-MM-DD HH24:MI:SS') from dual;
C. select date(sysdate,'YYYY-MM-DD HH24:MI:SS') from dual;
D. select chr(sysdate,'YYYY-MM-DD HH24:MI:SS') from dual;
正确答案是: A 你选择的答案是:B 判题结果:×
28、取出工资在2000到3000元(包括上下限)之间的员工( )
A. select * from emp wher sal in (2000,3000);
B. select * from emp wher sal like (2000,3000);
C. select * from emp wher sal = (2000,3000);
D. select * from emp wher sal between 2000 and 3000;
正确答案是: D 你选择的答案是:未选 判题结果:×