SELECT LAST_NAME
FROM EMPLOYEES
WHERE
DEPARTMENT_ID=50
AND
LAST_NAME LIKE '_a%';
(LIKE 사용)
DEPARTMENT_ID가 50인 사람 중에서
LAST_NAME의 두번째 글자가 'a'인 사람만 출력해줘
SELECT LAST_NAME
FROM EMPLOYEES
WHERE
DEPARTMENT_ID=50
AND
SUBSTR(LAST_NAME,2,1) LIKE 'a';
(SUBSTR 사용)
DEPARTMENT_ID가 50인 사람 중에서
LAST_NAME의 두번째 글자가 'a'인 사람만 출력해줘
SELECT LAST_NAME
FROM EMPLOYEES
WHERE
DEPARTMENT_ID=50
AND
INSTR(LAST_NAME,'a',2,1)
;
(INSTR 사용)
DEPARTMENT_ID가 50인 사람 중에서
LAST_NAME의 두번째 글자가 'a'인 사람만 출력해줘
SELECT EMPLOYEE_ID, LAST_NAME, ROUND(SALARY*1.1) "NEW SALARY"
FROM EMPLOYEES
;
SALARY의 10퍼센트 인상 값은? 소수점은 버려줘
SELECT *
FROM EMPLOYEES
WHERE MOD(TO_NUMBER(TO_CHAR(HIRE_DATE,'MM')),2)=0
;
HIRE_DATE가 짝수 달인 사람만 출력해줘
SELECT EMPLOYEE_ID, LAST_NAME
FROM EMPLOYEES
WHERE HIRE_DATE>= TO_DATE('2006/01/01','YYYY/MM/DD') AND
HIRE_DATE < TO_DATE('2007/01/01','YYYY/MM/DD')
AND MOD(TO_NUMBER(TO_CHAR(HIRE_DATE,'MM')),2)!=0
;
HIRE_DATE가 2006년인 사람 중에, 홀수 달에 입사한 사람의 정보만 보여줘
SELECT
TRUNC(MONTHS_BETWEEN(SYSDATE,TO_DATE('2007/01/01','YYYY/MM/DD')))
FROM DUAL
;
오늘과 2007년 1월 1일 간의 개월 수는?
SELECT DEPARTMENT_ID, HIRE_DATE,
MONTHS_BETWEEN(SYSDATE, HIRE_DATE) "MONTHS"
FROM EMPLOYEES
WHERE MONTHS_BETWEEN(SYSDATE, HIRE_DATE)>=(15*12)
;
15년 이상 근무한 사원들의 DEPARTMENT_ID, HIRE_DATE, 근무 개월 수 출력해
근무개월 수 별명은 MONTHS로 해줘
SELECT JOB_ID,
DECODE (JOB_ID
,'AD_PRES', 'A'
,'ST_MAN' ,'B'
,'IT_PROG' ,'C'
,'SA_REP' ,'D'
,'ST_CLERK' ,'E',
'F')"GRADE"
FROM EMPLOYEES
ORDER BY GRADE
;
JOB_ID 에 따라 각각 등급을 매길 거야,
전부 해당 안 되면 'F'라고 출력해주고 그 칼럼 이름은 GRADE야
SELECT LAST_NAME,SALARY, COMMISSION_PCT,
CASE
WHEN COMMISSION_PCT IS NULL THEN SALARY*12
ELSE (SALARY*12)+(SALARY*12*COMMISSION_PCT)
END AS "ANN_SAL"
FROM EMPLOYEES
;
CASE문으로 구현해
COMMISION_PCT가 NULL이면 SALARY*12 해줘
아니라면 (SALARY*12)+(SALARY*12*COMMISSION_PCT) 값 줘
이 칼럼 이름은 ANN_SAL 이야
SELECT LAST_NAME,SALARY, COMMISSION_PCT,
DECODE(COMMISSION_PCT,
NULL,SALARY*12,
(SALARY*12)+(SALARY*12*COMMISSION_PCT))
AS "ANN_SAL"
FROM EMPLOYEES
;
위와 내용 같음, DECODE로 구현
728x90
'국비 학원 가서 개발새발' 카테고리의 다른 글
국비학원 16일차) ORACLE 그룹함수 (0) | 2022.10.21 |
---|---|
국비학원 15일차) ORACLE 예습 (다중행 함수, 그룹함수) (0) | 2022.10.20 |
국비학원 15일차) ORACLE 시작!! (0) | 2022.10.19 |
국비학원 13일차) HashMap, Iterator, IO (0) | 2022.10.17 |
국비학원 12일차) 예외, Set(HashSet,TreeSet) Iterator //예습:제네릭,IO와 스트림, (1) | 2022.10.14 |