Oracle 에서 절대적 으로 전형 적 인 단일 표 조회 연습 은 매우 연습 할 만하 다.
--1、 30
SELECT * FROM EMP WHERE deptno=30;
--
SELECT * FROM EMP WHERE deptno=30;
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
----- ---------- --------- ----- ----------- --------- --------- ------
7499 ALLEN SALESMAN 7698 20- -81 1600.00 300.00 30
7521 WARD SALESMAN 7698 22- -81 1250.00 500.00 30
7654 MARTIN SALESMAN 7698 28- -81 1250.00 1400.00 30
7698 BLAKE MANAGER 7839 01- -81 2850.00 30
7844 TURNER SALESMAN 7698 08- -81 1500.00 0.00 30
7900 JAMES CLERK 7698 03- -81 950.00 30
--2、 (CLERK) ,
SELECT ename ,empno ,deptno FROM emp WHERE job='CLERK';
--
---------- -------- --------
SMITH 7369 20
ADAMS 7876 20
JAMES 7900 30
MILLER 7934 10
--3、
SELECT * FROM EMP WHERE NVL(comm,0)>sal;
--
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
----- ---------- --------- ----- ----------- --------- --------- ------
7654 MARTIN SALESMAN 7698 28- -81 1250.00 1400.00 30
--4、 60%
SELECT * FROM EMP WHERE NVL(comm,0)>sal*0.6;
--
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
----- ---------- --------- ----- ----------- --------- --------- ------
7654 MARTIN SALESMAN 7698 28- -81 1250.00 1400.00 30
--5、 10 (MANAGER) 20 (CLERK)
SELECT * FROM EMP WHERE (job='MANAGER' AND deptno=10) OR (job='CLERK' AND deptno=20);
--
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
----- ---------- --------- ----- ----------- --------- --------- ------
7369 SMITH CLERK 7902 17- -80 800.00 20
7782 CLARK MANAGER 7839 09- -81 2450.00 10
7876 ADAMS CLERK 7788 23- -87 1100.00 20
--6、 10 (MANAGER), 20 (CLERK), 2000
SELECT * FROM EMP WHERE (job='MANAGER' AND deptno=10) OR (job='CLERK' AND deptno=20) OR (job NOT IN('MANAGER','CLERK') AND sal>2000);
--
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
----- ---------- --------- ----- ----------- --------- --------- ------
7369 SMITH CLERK 7902 17- -80 800.00 20
7782 CLARK MANAGER 7839 09- -81 2450.00 10
7788 SCOTT ANALYST 7566 19- -87 3000.00 20
7839 KING PRESIDENT 17- -81 5000.00 10
7876 ADAMS CLERK 7788 23- -87 1100.00 20
7902 FORD ANALYST 7566 03- -81 3000.00 20
6 rows selected
--7、
SELECT DISTINCT(job) FROM EMP WHERE comm IS NOT NULL AND comm !=0;
--
JOB
---------
SALESMAN
--8、 100
SELECT * FROM EMP WHERE comm IS NULL OR comm<100;
--
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
----- ---------- --------- ----- ----------- --------- --------- ------
7369 SMITH CLERK 7902 17- -80 800.00 20
7566 JONES MANAGER 7839 02- -81 2975.00 20
7698 BLAKE MANAGER 7839 01- -81 2850.00 30
7782 CLARK MANAGER 7839 09- -81 2450.00 10
7788 SCOTT ANALYST 7566 19- -87 3000.00 20
7839 KING PRESIDENT 17- -81 5000.00 10
7844 TURNER SALESMAN 7698 08- -81 1500.00 0.00 30
7876 ADAMS CLERK 7788 23- -87 1100.00 20
7900 JAMES CLERK 7698 03- -81 950.00 30
7902 FORD ANALYST 7566 03- -81 3000.00 20
7934 MILLER CLERK 7782 23- -82 1300.00 10
11 rows selected
--9、
-- , ,
-- ‘ - ’ , 。
SELECT LAST_DAY(hiredate),EMP.* FROM EMP WHERE LAST_DAY(hiredate)-2=hiredate;
--
LAST_DAY(HIREDATE) EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
------------------ ----- ---------- --------- ----- ----------- --------- --------- ------
30- -81 7654 MARTIN SALESMAN 7698 28- -81 1250.00 1400.00 30
--10、 12
-- MONTHS_BETWEEN(SYSDATE,hiredate) , 12
SELECT MONTHS_BETWEEN(SYSDATE,hiredate)/12 ,EMP.* FROM EMP WHERE MONTHS_BETWEEN(SYSDATE,hiredate)/12 > 12;
--
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
---------- ----- ---------- --------- ----- ----------- --------- --------- ------
31.5449952 7369 SMITH CLERK 7902 17- -80 800.00 20
31.3702640 7499 ALLEN SALESMAN 7698 20- -81 1600.00 300.00 30
31.3648877 7521 WARD SALESMAN 7698 22- -81 1250.00 500.00 30
31.25 7566 JONES MANAGER 7839 02- -81 2975.00 20
30.7654253 7654 MARTIN SALESMAN 7698 28- -81 1250.00 1400.00 30
31.1713393 7698 BLAKE MANAGER 7839 01- -81 2850.00 30
31.0665006 7782 CLARK MANAGER 7839 09- -81 2450.00 10
25.2062855 7788 SCOTT ANALYST 7566 19- -87 3000.00 20
30.6283285 7839 KING PRESIDENT 17- -81 5000.00 10
30.8191887 7844 TURNER SALESMAN 7698 08- -81 1500.00 0.00 30
25.1121995 7876 ADAMS CLERK 7788 23- -87 1100.00 20
30.5826296 7900 JAMES CLERK 7698 03- -81 950.00 30
30.5826296 7902 FORD ANALYST 7566 03- -81 3000.00 20
30.4455328 7934 MILLER CLERK 7782 23- -82 1300.00 10
14 rows selected
--11、
SELECT INITCAP(ename) FROM emp;
--
INITCAP(ENAME)
--------------
Smith
Allen
Ward
Jones
Martin
Blake
Clark
Scott
King
Turner
Adams
James
Ford
Miller
14 rows selected
--12、 5
SELECT * FROM EMP WHERE LENGTH(ename) = 5;
--
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
----- ---------- --------- ----- ----------- --------- --------- ------
7369 SMITH CLERK 7902 17- -80 800.00 20
7499 ALLEN SALESMAN 7698 20- -81 1600.00 300.00 30
7566 JONES MANAGER 7839 02- -81 2975.00 20
7698 BLAKE MANAGER 7839 01- -81 2850.00 30
7782 CLARK MANAGER 7839 09- -81 2450.00 10
7788 SCOTT ANALYST 7566 19- -87 3000.00 20
7876 ADAMS CLERK 7788 23- -87 1100.00 20
7900 JAMES CLERK 7698 03- -81 950.00 30
8 rows selected
--13、 'R'
SELECT * FROM EMP WHERE ename LIKE '%R%';
--
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
----- ---------- --------- ----- ----------- --------- --------- ------
7521 WARD SALESMAN 7698 22- -81 1250.00 500.00 30
7654 MARTIN SALESMAN 7698 28- -81 1250.00 1400.00 30
7782 CLARK MANAGER 7839 09- -81 2450.00 10
7844 TURNER SALESMAN 7698 08- -81 1500.00 0.00 30
7902 FORD ANALYST 7566 03- -81 3000.00 20
7934 MILLER CLERK 7782 23- -82 1300.00 10
6 rows selected
--14、
SELECT ename ,SUBSTR(ename,0,3) FROM EMP;
--
---------- ----------
SMITH SMI
ALLEN ALL
WARD WAR
JONES JON
MARTIN MAR
BLAKE BLA
CLARK CLA
SCOTT SCO
KING KIN
TURNER TUR
ADAMS ADA
JAMES JAM
FORD FOR
MILLER MIL
14 rows selected
--15、 , ‘a’ 'A'
SELECT ename ,REPLACE(ename,'A','a') A a FROM EMP;
--
A A
---------- ------------
SMITH SMITH
ALLEN aLLEN
WARD WaRD
JONES JONES
MARTIN MaRTIN
BLAKE BLaKE
CLARK CLaRK
SCOTT SCOTT
KING KING
TURNER TURNER
ADAMS aDaMS
JAMES JaMES
FORD FORD
MILLER MILLER
14 rows selected
--16、-- 10
SELECT * FROM EMP WHERE MONTHS_BETWEEN(SYSDATE,hiredate)/12>10;
--
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
----- ---------- --------- ----- ----------- --------- --------- ------
7369 SMITH CLERK 7902 17- -80 800.00 20
7499 ALLEN SALESMAN 7698 20- -81 1600.00 300.00 30
7521 WARD SALESMAN 7698 22- -81 1250.00 500.00 30
7566 JONES MANAGER 7839 02- -81 2975.00 20
7654 MARTIN SALESMAN 7698 28- -81 1250.00 1400.00 30
7698 BLAKE MANAGER 7839 01- -81 2850.00 30
7782 CLARK MANAGER 7839 09- -81 2450.00 10
7788 SCOTT ANALYST 7566 19- -87 3000.00 20
7839 KING PRESIDENT 17- -81 5000.00 10
7844 TURNER SALESMAN 7698 08- -81 1500.00 0.00 30
7876 ADAMS CLERK 7788 23- -87 1100.00 20
7900 JAMES CLERK 7698 03- -81 950.00 30
7902 FORD ANALYST 7566 03- -81 3000.00 20
7934 MILLER CLERK 7782 23- -82 1300.00 10
14 rows selected
-- ,
SELECT * FROM EMP ORDER BY ename;
--
SELECT * FROM EMP ORDER BY ename;
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
----- ---------- --------- ----- ----------- --------- --------- ------
7876 ADAMS CLERK 7788 23- -87 1100.00 20
7499 ALLEN SALESMAN 7698 20- -81 1600.00 300.00 30
7698 BLAKE MANAGER 7839 01- -81 2850.00 30
7782 CLARK MANAGER 7839 09- -81 2450.00 10
7902 FORD ANALYST 7566 03- -81 3000.00 20
7900 JAMES CLERK 7698 03- -81 950.00 30
7566 JONES MANAGER 7839 02- -81 2975.00 20
7839 KING PRESIDENT 17- -81 5000.00 10
7654 MARTIN SALESMAN 7698 28- -81 1250.00 1400.00 30
7934 MILLER CLERK 7782 23- -82 1300.00 10
7788 SCOTT ANALYST 7566 19- -87 3000.00 20
7369 SMITH CLERK 7902 17- -80 800.00 20
7844 TURNER SALESMAN 7698 08- -81 1500.00 0.00 30
7521 WARD SALESMAN 7698 22- -81 1250.00 500.00 30
14 rows selected
--18、 ,
SELECT ename,hiredate FROM EMP ORDER BY hiredate ASC;
--
ENAME HIREDATE
---------- -----------
SMITH 17- -80
ALLEN 20- -81
WARD 22- -81
JONES 02- -81
BLAKE 01- -81
CLARK 09- -81
TURNER 08- -81
MARTIN 28- -81
KING 17- -81
JAMES 03- -81
FORD 03- -81
MILLER 23- -82
SCOTT 19- -87
ADAMS 23- -87
14 rows selected
--19、 、 , ,
SELECT ename,job,sal FROM emp ORDER BY job DESC,sal ASC;
--
ENAME JOB SAL
---------- --------- ---------
WARD SALESMAN 1250.00
MARTIN SALESMAN 1250.00
TURNER SALESMAN 1500.00
ALLEN SALESMAN 1600.00
KING PRESIDENT 5000.00
CLARK MANAGER 2450.00
BLAKE MANAGER 2850.00
JONES MANAGER 2975.00
SMITH CLERK 800.00
JAMES CLERK 950.00
ADAMS CLERK 1100.00
MILLER CLERK 1300.00
SCOTT ANALYST 3000.00
FORD ANALYST 3000.00
14 rows selected
--20、 、 、 ,
-- ,
SELECT ename ,TO_CHAR(hiredate,'yyyy') , TO_CHAR(hiredate,'mm') FROM emp ORDER BY , ;
--
---------- ---- ----
MILLER 1982 01
ALLEN 1981 02
WARD 1981 02
JONES 1981 04
SCOTT 1987 04
BLAKE 1981 05
ADAMS 1987 05
CLARK 1981 06
TURNER 1981 09
MARTIN 1981 09
KING 1981 11
SMITH 1980 12
JAMES 1981 12
FORD 1981 12
14 rows selected
--21、 30 , ,
SELECT ename ,sal ,TRUNC(sal/30) FROM EMP;
--
---------- --------- ----------
SMITH 800.00 26
ALLEN 1600.00 53
WARD 1250.00 41
JONES 2975.00 99
MARTIN 1250.00 41
BLAKE 2850.00 95
CLARK 2450.00 81
SCOTT 3000.00 100
KING 5000.00 166
TURNER 1500.00 50
ADAMS 1100.00 36
JAMES 950.00 31
FORD 3000.00 100
MILLER 1300.00 43
--22、 ( )2
SELECT * FROM EMP WHERE TO_CHAR(hiredate,'mm') = 02;
--
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
----- ---------- --------- ----- ----------- --------- --------- ------
7499 ALLEN SALESMAN 7698 20- -81 1600.00 300.00 30
7521 WARD SALESMAN 7698 22- -81 1250.00 500.00 30
--23、
SELECT ename ,SYSDATE-hiredate FROM EMP;
--
---------- ------------
SMITH 11520.760555
ALLEN 11455.760555
WARD 11453.760555
JONES 11414.760555
MARTIN 11235.760555
BLAKE 11385.760555
CLARK 11346.760555
SCOTT 9206.7605555
KING 11185.760555
TURNER 11255.760555
ADAMS 9172.7605555
JAMES 11169.760555
FORD 11169.760555
MILLER 11118.760555
14 rows selected
--24、 ’A‘
SELECT * FROM EMP WHERE ename LIKE '%A%';
--
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
----- ---------- --------- ----- ----------- --------- --------- ------
7499 ALLEN SALESMAN 7698 20- -81 1600.00 300.00 30
7521 WARD SALESMAN 7698 22- -81 1250.00 500.00 30
7654 MARTIN SALESMAN 7698 28- -81 1250.00 1400.00 30
7698 BLAKE MANAGER 7839 01- -81 2850.00 30
7782 CLARK MANAGER 7839 09- -81 2450.00 10
7876 ADAMS CLERK 7788 23- -87 1100.00 20
7900 JAMES CLERK 7698 03- -81 950.00 30
7 rows selected
--25、
-- :
-- : , 12
SELECT ename,TRUNC(MONTHS_BETWEEN(SYSDATE,hiredate)/12) FROM EMP;
ENAME
---------- ----------
SMITH 31
ALLEN 31
WARD 31
JONES 31
MARTIN 30
BLAKE 31
CLARK 31
SCOTT 25
KING 30
TURNER 30
ADAMS 25
JAMES 30
FORD 30
MILLER 30
14 rows selected
-- :
SELECT ename,TRUNC(MONTHS_BETWEEN(SYSDATE,hiredate)/12) ,TRUNC(MOD(MONTHS_BETWEEN(SYSDATE,hiredate),12)) FROM emp;
ENAME
---------- ---------- ----------
SMITH 31 6
ALLEN 31 4
WARD 31 4
JONES 31 3
MARTIN 30 9
BLAKE 31 2
CLARK 31 0
SCOTT 25 2
KING 30 7
TURNER 30 9
ADAMS 25 1
JAMES 30 6
FORD 30 6
MILLER 30 5
14 rows selected
-- :
SELECT ename,TRUNC(MONTHS_BETWEEN(SYSDATE,hiredate)/12) ,TRUNC(MOD(MONTHS_BETWEEN(SYSDATE,hiredate),12)) ,TRUNC(SYSDATE-ADD_MONTHS(hiredate,MONTHS_BETWEEN(SYSDATE,hiredate))) FROM emp;
ENAME
---------- ---------- ---------- ----------
SMITH 31 6 15
ALLEN 31 4 12
WARD 31 4 10
JONES 31 3 0
MARTIN 30 9 4
BLAKE 31 2 1
CLARK 31 0 23
SCOTT 25 2 13
KING 30 7 15
TURNER 30 9 24
ADAMS 25 1 9
JAMES 30 6 29
FORD 30 6 29
MILLER 30 5 9
14 rows selected
--
SELECT ename,TO_CHAR(SYSDATE,'YYYY-MM-DD'),TO_CHAR(hiredate,'YYYY-MM-DD') ,TRUNC(MONTHS_BETWEEN(SYSDATE,hiredate)/12) ,TRUNC(MOD(MONTHS_BETWEEN(SYSDATE,hiredate),12)) ,TRUNC(SYSDATE-ADD_MONTHS(hiredate,MONTHS_BETWEEN(SYSDATE,hiredate))) FROM emp;
--
ENAME TO_CHAR(SYSDATE,'YYYY-MM-DD')
---------- ----------------------------- ---------- ---------- ---------- ----------
SMITH 2012-07-02 1980-12-17 31 6 15
ALLEN 2012-07-02 1981-02-20 31 4 12
WARD 2012-07-02 1981-02-22 31 4 10
JONES 2012-07-02 1981-04-02 31 3 0
MARTIN 2012-07-02 1981-09-28 30 9 4
BLAKE 2012-07-02 1981-05-01 31 2 1
CLARK 2012-07-02 1981-06-09 31 0 23
SCOTT 2012-07-02 1987-04-19 25 2 13
KING 2012-07-02 1981-11-17 30 7 15
TURNER 2012-07-02 1981-09-08 30 9 24
ADAMS 2012-07-02 1987-05-23 25 1 9
JAMES 2012-07-02 1981-12-03 30 6 29
FORD 2012-07-02 1981-12-03 30 6 29
MILLER 2012-07-02 1982-01-23 30 5 9
14 rows selected
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
자바 작업 은 Clob 또는 NClob 데이터 형식의 저장 프로 세 스 인 스 턴 스 를 포함 합 니 다.텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.