본문 바로가기
콤퓨타/데이터베이스

데이터베이스 10주차 - SQL 고급

by 다_녤 2023. 5. 10.
반응형

SQL의 함수에 대해서 배웠다.


1. 내장함수(built-in function)

사용빈도가 높은 내장함수: 숫자함수, 문자함수, 날짜/시간함수
SELECT, WHERE, UPDATE 절에 모두 사용가능하다.

< MySQL의 내장함수 >


a) 숫자함수
ABS(), CEIL()
ex)
SELECT ABS(78)
FROM Dual;
*oracle은 FROM절이 필수라 Dual이라는 가상 테이블을 사용

b) 문자함수
REPLACE(), LENGTH(), CHAR_LENGTH()
LENGTH는 알파벳 한글자에 1, 한글은 한글자에 3으로 표현됨 (byte 단위)
순수한 문자의 수는 CHAR_LENGTH() 활용 (문자 단위)
*공백도 하나의 문자로 간주됨 

c) 날짜/시간함수
format을 통해 날짜 형식을 지정 

< Format안에서 사용하는 날짜 지정자 >



d) NULL값 처리
NULL: 아직 지정되지 않은 값

NULL은 '0', '' (빈문자), ' ' (공백) 과 다르다.

비교연산자로도 비교가 불가능, NULL값에 대해 연산수행시 NULL값으로 반환된다.

집계함수 사용시에도 집계에서 제외된다.

ex) NULL + 5 = NULL 반환

 

IFNULL 함수

 IFNULL(속성, 값): 만약 속성값이 NULL이면 값에 적힌 데이터로 출력


2. 부속질의(subquery)
데이터가 대량인 경우, 조인보다는 부속질의가 성능이 더 좋음
주질의와 부속질의로 구성
- 부속질의의 종류
스칼라 부속질의 - SELECT절
인라인 뷰 - FROM절
중첩질의 - WHERE절   (*가장 많이 사용)

반응형