|
2011-10-1 比较条件中的ALL, ANY 和 SOME
作者:Tim Hall
难度:中
下列的代码创建了plch_emp表及数据:
CREATE TABLE plch_emp (
empno NUMBER(4,0),
ename VARCHAR2(10 BYTE),
sal NUMBER(7,2),
deptno NUMBER(2,0)
)
/
BEGIN
INSERT INTO plch_emp VALUES (7369,'SMITH', 800,20);
INSERT INTO plch_emp VALUES (7900,'JAMES', 950,30);
INSERT INTO plch_emp VALUES (7876,'ADAMS', 1100,20);
INSERT INTO plch_emp VALUES (7521,'WARD', 1250,30);
INSERT INTO plch_emp VALUES (7654,'MARTIN',1250,30);
INSERT INTO plch_emp VALUES (7844,'TURNER',1500,30);
INSERT INTO plch_emp VALUES (7934,'MILLER',1300,10);
INSERT INTO plch_emp VALUES (7499,'ALLEN', 1600,30);
INSERT INTO plch_emp VALUES (7782,'CLARK', 2450,10);
INSERT INTO plch_emp VALUES (7698,'BLAKE', 2850,30);
INSERT INTO plch_emp VALUES (7566,'JONES', 2975,20);
INSERT INTO plch_emp VALUES (7902,'FORD', 3000,20);
INSERT INTO plch_emp VALUES (7788,'SCOTT', 3000,20);
INSERT INTO plch_emp VALUES (7839,'KING', 5000,10);
COMMIT;
END;
/
下列哪些查询返回了名字为 "KING"的员工的信息?
(A)
SELECT empno, ename, sal
FROM plch_emp
WHERE sal > ALL (2000, 3000, 4000);
(B)
SELECT e1.empno, e1.ename, e1.sal
FROM plch_emp e1
WHERE e1.sal > ALL (SELECT e2.sal
FROM plch_emp e2
WHERE e2.deptno = 20);
(C)
SELECT empno, ename, sal
FROM plch_emp
WHERE sal > ANY (2000, 3000, 4000);
(D)
SELECT empno, ename, sal
FROM plch_emp
WHERE sal > SOME (3000, 4000, 5000);
(E)
SELECT empno, ename, sal
FROM plch_emp
WHERE sal > 2000 OR sal > 3000 OR sal > 4000; |
|