SELECT * FROM
EMP (基础表)
WHERE
EMPNO > 0 AND EXISTS (SELECT
‘X'
FROM DEPT WHERE DEPT.DEPTNO = EMP.DEPTNO
AND LOC = ‘MELB')
SELECT REGION,AVG(LOG_SIZE)FROM LOCATION
GROUP
BY REGION HAVING REGION
REGION != ‘SYDNEY'
AND REGION != ‘PERTH'
SELECT REGION,AVG(LOG_SIZE) FROM LOCATION
WHERE
REGION REGION != ‘SYDNEY' AND REGION
!= ‘PERTH'
GROUP
BY REGION
SELECT DISTINCT DEPT_NO,DEPT_NAME FROM DEPT
D,EMP E
WHERE
D.DEPT_NO = E.DEPT_NO
SELECT DEPT_NO,DEPT_NAME FROM DEPT
D WHERE EXISTS ( SELECT ‘X'
FROM EMP E WHERE E.DEPT_NO = D.DEPT_NO);
5、用UNION替换OR (适用于索引列)
SELECT LOC_ID , LOC_DESC , REGION FROM LOCATION
WHERE
LOC_ID = 10 UNION SELECT LOC_ID
, LOC_DESC , REGION
FROM
LOCATION WHERE REGION = “MELBOURNE”
SELECT LOC_ID , LOC_DESC , REGION
FROM
LOCATION WHERE LOC_ID = 10 OR REGION = “MELBOURNE”
SELECT….FROM
LOCATION WHERE LOC_ID = 10
OR LOC_ID = 20 OR LOC_ID = 30 
SELECT…
FROM
LOCATION WHERE LOC_IN IN (10,20,30);
SELECT …
FROM
EMP E WHERE SAL > 50000 AND JOB
= ‘MANAGER'
AND 25 < (SELECT COUNT(*) FROM EMP
WHERE MGR=E.EMPNO);

SELECT … FROM
EMP E WHERE 25 < (SELECT
COUNT(*)
FROM EMP
WHERE
MGR=E.EMPNO) AND SAL
> 50000 AND JOB
= ‘MANAGER';