본문 바로가기
데이터베이스/SQL

SQL WHERE절 (숫자 데이터, 문자, 날짜), 산술 연산자

by ADELA_J 2023. 8. 27.

- 월급이 3000인 사원의 이름과 월급, 직업을 출력하는 SQL

▶ 검색하기 원하는 조건을 WHERE절에 작성. 

  WHERE절은 FROM 절 다음에 작성

- > 크다 / < 작다 / BETWEEN AND ~ 사이에 있는 / LIKE 일치하는 문자 패턴 검색

>= <= = != ^= <> IS NULL IN
크거나 같다 작거나 같다 같다 같지 않다 같지 않다 같지 않다 NULL 값여부 일치하는 값 검색

- 월급이 3000 이상인 사원들의 이름과 월급을 출력하는 SQL 문

- ORDER BY에서 식별자(별칭)으로 해도 됐었는데 WHERE 절에서는?

▶ 안된다. SQL이 실행되는 순서는 2,3,1 이기 때문에. 

 

- 이름이 SCOTT인 사원의 이름, 월급, 직업, 입사일, 부서 번호를 출력

▶ 문자를 검색할 때는 문자 양쪽에 작은 따옴표를 붙여줘야함.

  ▷ 문자라고 오라클, DBMS 에게 알려주는 것.

 

- 81년 11월 17일에 입사한 사원의 이름과 입사일을 출력함

▶ 날짜도 문자처럼 양쪽 끝에 작은 따옴표를 붙여줘야함.

▶ 레코드가 있지만 나오지 않는 이유는, 날짜형식이 다르기 때문에. 그래서 현재 접속한 세션(session)의 날짜 형식을 확인해야함.

 

- 현재 세션의 날짜 형식 조회 : NSL_SESSION_PARAMETERS 

▶ 날짜 형식 표기법에 따르면 RR은 년도. 

  ▷ RR은 이전세기 (19nn년 ) YY는 지금 세기 (20nn년) 

- 현재 내가 접속한 세션의 파라미터를 변경하는 명령어 : ALTER SESSION SET 

  ▷ 다시 로그아웃했다가 접속하면 기본값으로 복귀되어 세팅됨

 

<산술연산자>

 

- 연봉 36000 이상인 사원들의 이름과 연봉을 출력

- 부서 번호가 10번인 사원들의 이름, 월급, 커미션, 월급+커미션을 출력

▷ COMM(커미션)과 SAL+COMM(월급+커미션)에 데이터가 없음!!!!!!!!!!!!!!!!!!!!

 ▶ 이 상태를 NULL 이라고 함. 데이터가 할당되지 않은 상태 or  알 수 없는 값. UNKNOWN

▷ NULL + 어떠한 값 = NULL

 

- NVL 함수 : NULL 을 데이터로 처리하는 함수.

▶ NVL(comm, 0)은 comm가 NULL이라면 0으로 출력하는 함수. 

▷ 위에서는 NULL이여서 값이 출력이 NULL 이였는데

두번째에서는 0으로 되어서 5000+0 으로 값이 출력됨

 

'데이터베이스 > SQL' 카테고리의 다른 글

SQL 논리연산자(AND, OR, NOT)  (0) 2023.09.18
SQL 비교연산자, BETWEEN AND, LIKE  (0) 2023.08.28
SQL DISTINCT, ORDER BY  (0) 2023.08.27
SQL SELECT, * , AS, 연결연산자(||) 사용하기  (1) 2023.08.27
인덱스  (0) 2023.05.12