오늘이라도
2. NLS, 날짜 출력, AND, OR, BETWEEN, IN, LIKE, ESCAPE, NULL, ORDER BY 본문
2. NLS, 날짜 출력, AND, OR, BETWEEN, IN, LIKE, ESCAPE, NULL, ORDER BY
upcake_ 2020. 4. 22. 20:59https://github.com/upcake/Class_Examples
교육 중에 작성한 예제들은 깃허브에 올려두고 있습니다.
gif 파일은 클릭해서 보는 것이 정확합니다.
- NLS와 날짜 출력, 양식 -
- NLS(National Language Support)는 오라클에서 언어마다 다른 문화에 맞춰서 요소들을 적절하게 구성해놓은 지원을 뜻한다.
- v$nls_parameters에는 이런 지원의 구성 요소들이 들어가 있다.
- RR은 年, MM은 月, DD는 日을 뜻한다.
- SELECT SYSDATE FROM dual; 문장으로 오늘 날짜를 출력할 수 있다.
- dual이라는 테이블은 한 행에 한 칼럼만 담고 있는 더미 테이블로써 간단한 산술 연산이나 날짜 연산을 위해 주로 쓰인다.
- SELECT TO_CHAR(SYSDATE, 'YYYY/MM/DD HH24:MI:SS') FROM dual; 문장에서 원하는 요소를 가감하여 날짜 양식을 바꿀 수 있다.
- 논리 연산자 AND, OR -
- 논리 연산자 AND는 조건문에서 복수의 조건을 동시에 만족해야 할 때 사용한다.
- 문자, 날짜의 데이터를 표현할 때 따옴표(')를 잊지 않도록 한다.
- OR 연산자는 조건문에서 복수의 조건 중 하나 이상만 만족하면 될 때 사용한다.
- 연산자의 우선순위
· 산술 연산의 경우 : *, / → +, -
· 논리 연산의 경우 : AND(논리곱) → OR(논리합)
- BETWEEN -
- BETWEEN n AND m : n 이상 m 이하를 지정한다.
- NOT BETWEEN n AND m : n 이상 m 이하의 값을 제외한 값, 즉, n 미만 m 초과의 값을 지정한다.
- SQL 양식에 맞춰 날짜를 적으면 날짜로 인식하고 오라클 SQL 엔진이 묵시적 형 변환을 해준다.
- 가급적이면 명시적 형 변환을 해주는 것이 좋은데, 날짜의 명시적 형 변환 함수는 TO_DATE()이다.
- IN -
- IN() 연산자는 여러 개의 값 중에 일치하는 값이 있는지 비교할 때 사용한다.
- IN(a, b, c,...)의 형태로 비교할 값의 목록을 나열한다.
- LIKE -
- 특정한 문자로 시작하거나 포함하거나 끝나는 값을 찾을 때 LIKE를 사용한다.
- ESCAPE -
- LIKE 연산자와 함께 사용되는 %, _를 문자 자체로 인지시켜야 할 때 ESCAPE 옵션을 사용한다.
- NULL -
- IS NOT NULL 옵션은 NULL 값을 제외하는 조건을 만들 때 사용한다.
- ORDER BY -
- ORDER BY 절은 출력되는 목록을 오름차순/내림차순으로 정렬할 때 사용한다.
- ORDER BY 절은 WHERE 절과 달리 ALIAS를 사용하여 정렬할 수 있다.
- 필드 이름뿐만 아니라, SELECT 목록에서의 위치 값으로도 지정할 수 있다.