- 월급이 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 |