2_oracle_연산자,정렬,함수

study/Oracle · 2019. 11. 15. 08:50

연결연산자

||을 사용하여 여러 칼럼을 하나의 컬럼인 것처럼 연결

 

비교연산자

비교대상컬럼명 like '문자패턴'

-문자패턴

'A%' (A로 시작하는 값)

'%A' (A로 끝나는 값)

'%A%' (A가 포함되는 값)

- 문자수

'_' (한글자)

'__' (두글자)

- ESCAPE '#';

_(글자수)와 문자_를 구분해주기위해 사용 # 대신에 어떠한 문자도 사용가능

-IS NULL과 IS NOT NULL

IS NULL : 컬럼값이 NULL인 경우

IS NOT NULL : 컬럼값이 NULL이 아닌경우

 

-IN

비교하려는 값과 목록에 일치하는 값이 있으면 TRUE를 반환하는 연산자

비교대상컬럼명 IN(XXX,XXX,.......);

 

연산자 우선 순위

1. 산술연산자
2. 연결연산자
3. 비교연산자
4. IS NULL / IS NOT NULL, LIKE , IN , NOT IN
5. BETWEEN AND / NOT BETWEEN AND
6. NOT
7. AND
8. OR

★ 정렬

ORDER BY 절

SELECT한 결과를 정렬할 때 작성하는 구문

SELECT 구문 제일 마지막에 작성

SELECT 실행 순서 중 가장 마지막

순서

1. FROM 2. WHERE 3. SELECT 4. ORDER BY

[표현식]

SELECT 컬럼명

FROM 테이블명

[WHERE 조건식]

[ORDER BY 컬럼명|별칭|컬럼순서 정렬방법 [NULLS FIRST|LAST]

 

함수

컬럼의 값을 읽어서 계산환 결과를 리턴함

단일 행 함수(SINGLE ROW)

- 컬럼에 기록된 N개의 값을 읽어서 N개의 결과를 리턴

그룹 함수(GROUP)

- 컬럼에 기록된 N개의 값을 읽어서 1개의 결과를 리턴

 

1. 문자관련함수

LENGTH/LENGTHB

길이/문자바이트

INSTR

INSTR('문자열'|컬럼명, '문자' , 찾을위치의 시작값, [순번])

TRIM

주어진 컬럼이나 문자열의 앞/뒤 양쪽에 있는 지정한 문자가제거

문자를 지정하지 않는 경우 양쪽 공백제거

BOTH(양쪽) / LEADING(앞) / TRAILING(뒤)

★★ SUBSTR

컬럼이나 문자열에서 지정한 위치부터 지정한 개수의 문자열을

잘라내어 반환(자바에 String,subString()과 유사함)

SUBSTR(STRING, POSITION, [LENGTH])

- STRING : 문자 타입 컬럼 또는 문자열

- POSITION : 문자열을 잘라낼 위치

  -- 양수면 시작방향, 음수면 끝방향 기준

-- LENGTH : 반환할 문자 개수(생략시 끝까지)

 -- 음수 작성시 NULL 리턴

REPLACE

REPLACE(STRING, 변환전문자(열), 변환 후 문자(열))

컬럼의 문자 또는 문자열에서 특정 문자(열)을 지정한 문자(열)로 변환 후 반환

2. 숫자처리함수

ABS: 절대값

MOD: 나머지

ROUNT:반올림

TRUNC:버림

FLOOR:버림

 

3. 날짜 처리 함수

★SYSDATE

-현재시간

EXTRACT ( YEAR|MONTH|DAY FROM ~~~~)

-년, 월, 일 정보를 추출하여 반환

 

4. 형변환 처리 함수

TO_CHAR

TO_CHAR(DATE, [,FORMAT])

TO_DATE

문자 또는 숫자형 데이터를 날짜형으로 변환

TO_NUMBER('1,000', '9,999')

 

5. NULL 처리함수

★ NVL(컬럼명, 변경값1)

★NVL2(컬럼명, 변경값1, 변경값2)

- 해당 컬럼에 값이 있으면 변경값1 NULL이면 변경값2

NULLIF(비교대상1, 비교대상2)

- 두 개의 값이 동일하면 NULL, 다르면 비교대상1 반환

'study > Oracle' 카테고리의 다른 글

5_oracle_DDL(CREATE)  (0) 2019.11.21
5_oracle_서브쿼리  (0) 2019.11.20
4_oracle_JOIN  (0) 2019.11.19
3_oracle_함수2  (0) 2019.11.16
1_oracle_기본개념  (0) 2019.11.14