SQL 특수 연산자와 함수 정리! IN, BETWEEN, LIKE부터 문자열·날짜·집계 함수까지
SQL을 활용한 데이터 조회에서는 다양한 특수 연산자와 함수가 사용됩니다.
그 중에서도 IN, BETWEEN, LIKE, NOT 같은 연산자와 문자열, 날짜, 집계 함수는 자주 등장하며 시험에서도 단골로 출제됩니다.
이 글에서는 각각의 개념을 예시와 함께 확실히 정리해드립니다.
✅ IN — “~ 안에” 포함 여부
형식: IN (값1, 값2, 값3)
설명: 지정한 여러 값 중 하나라도 포함되면 참 (OR 연산과 동일)
예:
SELECT * FROM 회원
WHERE 지역 IN ('서울', '부산');
✅ BETWEEN — “~부터 ~까지” 범위 조건
형식: BETWEEN 값1 AND 값2
설명: 값1과 값2 사이(포함)의 값 선택
예:
SELECT * FROM 제품
WHERE 가격 BETWEEN 1000 AND 5000;
✅ LIKE — 문자열 일부 검색
형식: LIKE '문자열%'
%: 0개 이상의 문자
_: 정확히 1개의 문자
예:
SELECT * FROM 고객
WHERE 이름 LIKE '김%';
✅ NOT — 조건의 반대
형식: NOT 조건
설명: 지정 조건을 만족하지 않는 값 선택
예:
SELECT * FROM 회원
WHERE 지역 NOT IN ('서울', '부산');
✅ DISTINCT — 중복 제거
형식: SELECT DISTINCT 필드명
설명: 중복된 결과를 한 번만 표시
예:
SELECT DISTINCT 부서 FROM 사원;
✅ 문자열 처리 함수
LEFT(문자열, n): 왼쪽부터 n개 문자 추출
RIGHT(문자열, n): 오른쪽부터 n개 문자 추출
MID(문자열, 시작위치, n): 중간에서 n개 문자 추출
TRIM(문자열): 앞뒤 공백 제거
LCASE(문자열): 소문자로 변환
UCASE(문자열): 대문자로 변환
INSTR(문자열, 검색문자): 검색문자의 위치 반환
LEN(문자열): 문자열 길이 반환
STR(문자열, n): 문자를 n번 반복
STRREVERSE(문자열): 문자열 역순 정렬
✅ 날짜/시간 함수
DATE(): 현재 날짜 반환
NOW(): 현재 날짜 + 시간 반환
DATEDIFF(날짜1, 날짜2): 날짜 차이 반환
DATEADD(단위, 수치, 날짜): 날짜 더하기
DATEVALUE(문자열): 문자열을 날짜로 변환
✅ 조건 함수
IF(조건, 값1, 값2): 조건이 참이면 값1, 거짓이면 값2 반환
CHOOSE(번호, 값1, 값2, ...): 번호에 해당하는 값을 반환
SWITCH(조건1, 결과1, 조건2, 결과2, ...): 첫 번째 참 조건의 결과 반환
✅ 자료형 변환 함수
CINT(값): 정수로 변환
CBOOL(값): 논리형으로 변환
CSTR(값): 문자열로 변환
CDATE(값): 날짜형으로 변환
✅ 자료형 평가 함수
ISNULL(값): 값이 NULL이면 TRUE
ISERROR(값): 오류 여부 판단
ISNUMERIC(값): 숫자인지 판단
✅ 집계 함수 (Aggregate Functions)
COUNT(필드): 레코드 수 계산
SUM(필드): 합계 계산
AVG(필드): 평균 계산
MAX(필드): 최댓값
MIN(필드): 최솟값
예:
SELECT COUNT(*) FROM 고객;
✅ 도메인 집계 함수
형식: D함수("필드", "테이블", "조건")
DSUM: 조건에 따른 합계
DCOUNT: 조건에 따른 개수
DAVG / DMAX / DMIN: 평균 / 최댓값 / 최솟값
예:
DCOUNT("학번", "학생", "점수 >= 60")
→ 학생 테이블에서 점수 60 이상인 학번 수
주의: DCOUNT(*)는 NULL 포함 전체 레코드 수 계산
✅ VLOOKUP 함수 개념
기능: 조건에 맞는 필드 값을 찾아 반환
예: 회원 테이블에서 번호가 1인 이름을 가져오기
'컴퓨터활용능력 > 1급 필기시험' 카테고리의 다른 글
폼(Form)의 개념과 구성, 활용 방법 완전 정리 (1) | 2025.06.24 |
---|---|
데이터베이스 조인의 개념과 SQL 명령어 정리 (0) | 2025.06.24 |
SQL SELECT문 완전 정복! 초보도 이해하는 SELECT문 구조 (0) | 2025.06.23 |
엑세스에서 레코드 다루기 완전 정복! (0) | 2025.06.23 |
관계형 데이터베이스의 핵심, 테이블 간 ‘관계’ 완전 정리! (1) | 2025.06.23 |