티스토리 뷰

반응형

데이터 조작을 위한 주요 함수 정리




#. SQL 각각의 구문의 의미

SELECT 컬럼명 --------------------- (5)          추출된 데이터들을 조회

FROM 테이블명------------------- (1)           테이블을 가장 먼저 확인

WHERE 테이블 조건 --------------- (2)         테이블에서 주어진 조건에 맞는 데이터들을 추출

GROUP BY 컬럼명 -------------------- (3)       공통적인 데이터들끼리 묶어 그룹

HAVING 그룹 조건 ----------------- (4)         주어진 주건에 맞는 그룹들을 추출

ORDER BY 컬럼명 -------------------- (6)       추출된 데이터들을 정렬




#. 날짜 관련 함수 (문자열을 날짜로 변경하기 위한 방법)

to_char('2018/12/27', 'YYYY/MM/DD')



#. 문자 치환함수(upper, lower, substr, 연결연산자 등)

initcap(ENAME),  // 첫 문자만 대문자 치환

lower(ENAME),   // 전체 소문자 치환

upper(ENAME)   // 전체 대문자 치환

substr(원본문자열 혹은 컬럼, 시작위치, 추출개수)   // substr(jumin, 7, 1) as 성별

INSTR(추출 문자열 또는 컬럼, 찾고자하는 문자열, 시작위치, 반복번호)   // substr(TEL, 1,  instr(TEL, ')', 1, 1)-1) AS 지역번호

                                                                                             // substr(mail, 1,  instr(mail, '@', 1, 1)-1) AS 아이디




#. 원하는 데이터 선택 방법. where 절 조건

select *

from STUDENT

where HEIGHT >= 180;



#. 인라인뷰, 다중컬럼쿼리 비교

# 부서별 최대 연봉자 누구인지 확인 

-- 인라인뷰

-- 다중 컬럼 서브 쿼리




#. decode

DECODE(A, B, '1', null) ::  A B 일 경우 '1', 아닐 경우 null(생략 가능)

DECODE(A, B, '1', '2') ::  A B 일 경우 '1', 아닐 경우 '2'

DECODE(A, B, '1', C, '2', '3') ::  A B 일 경우 '1', A C 일 경우 '2', 둘 다 아닐 경우 '3'

DECODE(A, B, DECODE(C, D, '1', null)) ::  A B 일 경우, C D 를 만족하면 '1', C D 가 만족 안 하면 null

DECODE(A, B, DECODE(C, D, '1', '2')) ::  A B 일 경우, C D 를 만족하면 '1', C D 를 만족 안 하면 '2'





#. null 치환 함수(nvl함수 사용 시 주의점)

NVL(조사할 컬럼, null일 경우 치환할 값)   -- 주의. 조사할 컬럼과 치환할 값의 데이터 타입이 같아야 함

NVL2(조사 대상 컬럼 , null이 아닐 경우 치환할 값 , null일 경우 치환할 값)




#. 치환함수 replace, traslate 

REPLACE('문자열 또는 컬럼', '찾을 문자열', '바꿀 문자열')

TRANSLATE ('문자열 또는 컬럼', '찾을 문자열', '바꿀 문자열')

-- replace는 단어 단위의 치환, translate는 문자의 1:1 치환




#. 날짜 반올림버림



#. group by




#. is.null, isnotnull

select *

from EMP

where EMPNO is null;

=> emp 테이블에서 empno의 값이 null인 데이터 조회


select *

from EMP

where EMPNO is not null;

=> emp 테이블에서 empno의 값이 null이 아닌 데이터 조회




#. JOIN









반응형
댓글
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday