[SQLD] SQL기본 연산자, 함수
연산자의 종류
- BETWEEN A AND B : A와 B 사이의 범위
- IN(LIST) : 리스트에 있는 값 중 하나라도 일치
- IS NULL : NULL 값인 경우
- IS NOT NULL : NULL 값이 아닌 경우
- NOT IN(LIST) : LIST의 값과 일치 하지 않는 경우
- LIKE '비교문자열' : 비교 문자열과 일치하는 경우
연산자 우선순위
() -> NOT연산자 -> 비교, SQL비교연산자 -> AND -> OR
단일행 함수
- SELECT, WHERE, ORDER BY 절에서 사용 가능
- 행에 개별적 조작
- 여러 인자가 있어도 결과는 1개만 출력
- 함수 인자에 상수, 변수, 표현식 사용 가능
- 함수 중첩 가능
단일행 함수의 종류
- 문자열 함수 : LOWER, UPPER, SUBSTR, SUBSTRING, LENGTH, LEN, LTRIM, RTRIM, TRIM, ASCII, CONTACT
- 숫자형 함수 : ABS, MOD, ROUND, TRUNC, SIGN, CHR, CHAR, CEIL, CELING, FLOOR, EXP, LOG, LN, POW ER,
SIN, COS, TAN
- 변환형 함수 : 암시적 데이터 유형 변환 (문자가 숫자로 변형됨)
- NULL 관련 함수 : NVL / ISNULL, NULLIF, COALESCE
문자형 함수
- LOWER : 문자열을 소문자로
- UPPER : 문자열을 대문자로
- ASCII : ASCII 문자의 값 반환
- CHR/CHAR : ASCII 값에 해당하는 문자 반환
- CONTACT : 1,2문자열을 연결
- SUBSTR/SUBSTRING : m n 문자열 중 위치에서 개의 문자를 반환
- LENGTH : 문자열 길이를 숫자 값으로 반환
숫자형 함수
- SIGN(숫자) : 숫자가 양수면 1 음수면 -1 0이면 0을 반환
- MOD(숫자1, 숫자2) : 모듈러 연산
- CEIL(숫자) : 크거나 같은 최소 정수 반환
- FLOOR(숫자) : 작거나 같은 최소 정수 반환
- ROUND(숫자1, 숫자2) : 숫자1을 숫자2만큼의 자릿수에서 반올림
- RUNC(숫자1, 숫자2) : 숫자1에서 숫자2 아래 소수점 버림
- TRUNC(숫자1, 숫자2) : 숫자1을 소수 숫자2 자리에서 잘라서 리턴
NULL 관련 함수
- NVL(표현식1, 표현식2) /IS NULL(표현식1, 표현식2) : 표현식1값이 NULL이면 표현식2를 출력
- NULLIF(표현식1, 표현식2) : 표현식1과 표현식2의 값이 같으면 NULL 다르면 표현식1값을 출력
- COALESCE(표현식1, 표현식2, ....) : 임의의 개수 표현식에서 NULL이 아닌 최초의 표현식을 나타낸다
다중행 집계 함수
- 여러 행들의 그룹이 모여서 그룹당 단 하나의 결과를 돌려주는 함수
- GROUP BY 절은 행들을 소그룹화 한다.
- SELECT, HAVING, ORDER BY 절에 사용 가능
- ALL : Default 옵션 생략가능
- DISTINCT : 같은 값을 하나의 데이터로 간주하는 옵션
다중행 집계 함수 종류
- COUNT(*) : NULL 값을 포함한 행의 수
- COUNT(표현식) : 표현식의 값이 NULL값인 것을 제외한 행의 수
- SUM() : NULL값을 제외한 합계
- AVG() : NULL값을 제외한 평균
- MAX() : 최대값 출력
- MIN() : 최소값 출력