본문 바로가기
학교 강의/데베기초교양

7주차

by hoshi03 2023. 10. 12.

날짜 연산

시간을 더할때는 /24로 나눠서 더하고 날짜끼리 계산할때는 to_date 메서드를 사용한다

select to_char (sysdate, 'YY/MM/DD/HH24:MI')  오늘날짜,
    sysdate + 1  더하기1,
    sysdate -1  빼기1,
    to_date('20171202')- to_date('20171201') 날짜빼기,
    sysdate + 13/24  시간더하기
from DUAL;

select next_day('20231012',6) from DUAL; <- 10/12 기준으로 돌아오는 금요일 구하기(1 = 일요일 부터 시작)

 

널값과 그냥 값을 곱해버리면 값이 null이 나오기 때문에 nvl 함수를 사용한다

아래처럼 하면 널값이 되는 commission_pct를 0으로 치환해서 계산한다

select salary * nvl(commission_pct, 0) as nvl_test
from employees
order by commission_pct;

 

decode 메서드를 이용해서 치환(if문 느낌)

여기선 department_id가 60이면 급여를 인상하고 인상여부를 바꿔줬다

select first_name ||' '|| last_name full_name,
    department_id,
    salary 원래급여,
    decode(department_id, 60, salary *1.1, salary) 급여인상,
    decode(department_id, 60, '10% 인상', '미인상') 인상여부
from employees;

group by having 절

'학교 강의 > 데베기초교양' 카테고리의 다른 글

데베교양 확인문제  (0) 2023.10.25
데베교양 시험대비  (1) 2023.10.23
5주차  (0) 2023.10.06
4주차  (0) 2023.10.01
데베교양 3주차  (0) 2023.09.21