컬럼 및 로우의 선택
SELECT 구분
SELECT [DISTINCT {* | COLUMN명 | 표현식}]
FROM 테이블명;
SQL문 작성 규칙
- 인용부호를 붙이지 않으면 대소문자를 구분하지 않음
- 여러 라인에 걸쳐서 작성이 가능하며, 가독성을 위해 들여 쓰기 하는 것이 좋음
- 키원드는 여러 행에 나누어 쓰거나 약어로 쓸 수 없음
- 여러 컬럼을 검색 할 경우 쉽표로 컬럼을 구분함
- SELECT 절에서 출력 겨롸를 표시할 순서대로 컬럼을 지정함
산술 연산 (+, -, *, /)
SELECT ENAME, SAL, SAL * 3
FROM EMP;
- 연산자 우선 순위
- 곱하기 및 나누기를 더하기나 빼기보다 먼저 수행
- 동둥한 우선순위를 갖는 연산은 외쪽에서 오른쪽으로 수행
- 괄호를 사용해서 연산자 우선순위 지정
컬럼 별칭(ALIAS)
- 컬럼의 원래 이름이 아닌 별도의 이름을 컬럼 HEADING에 표시함
- 주로 연산이 된 컬럼에 사용함
- 컬럼 명 다음에 AS를 슨 뒤, 그 뒤에 별칭으로 상요할 단어를 제시함
- 특수 문자나 공백을 컬럼의 별칭으로 상요하고 하면 별칭에 큰 따옴표를 사용
특정 row 선택하기(WHERE)
SELECT [DISTINCT {* | COLUMN명 | 표현식}]
FROM 테이블명
WHERE CONDITION(S);
- WHERE절을 사용하여 질의에서 반환되는 행을 제한할 수 있음
- WHERE절은 조건을 기술하며, FROM절 바로 다음에 사용함
- 조건이 참일 경우 조건을 만족하는 행이 반환됨
- CHAR, VARCHAR2와 같은 문자형 타입과 DATE날짜 타입을 가진 컬럼을 특정 값과 비교하기 위해서는 인용부호(작은 따옴표)로 묶어서 비교 처리를 해야 하지만 NUMBER같은 숫자 형태의 값은 인용부호를 사용하지 않고 그대로 사용하면 됨
비교 연산자
- =, >, >=, <, <=, <>, !=, ^=
SQL 연산자
BETWEEN A AND B
- 조건절에 명시된 값이 지정된 A값과 B값 사이에 포함되는지 비교함
- A값과 B값 모두 포함
- 항상 A < B 조건으로 입력
- 비교하는 값의 범위가 110에서 120 사이의 값이라고 하면, BETWEEN 110 AND 120 으로 형식으로 사용함
IN
- 형태는 IN (VALUE1, VALUE2, VALUE3...)이며, 비교대상이 괄호 안의 값중 하나와 일치하는지를 확인함
- 비교하는 값이 하나이더라도 반드시 괄호와 같이 사용해야 함
- IN 다음 비교하는 값은 문자 타입, 숫자 타입, 날짜 타입 모두 사용할 수 있음
LIKE
- LIKE를 사용하여 특정 문자나 문자열이 포함되어 있는지를 확인함
- 특정 패턴에 속하는 값을 조회하고자 하는 경우 사용함
- WILDCARD 문자(%, _)를 이용해 문자열 부분 매칭 여부를 확인함
- %는 0개 문짜 또는 1개 이상의 문자열이 올 수 있음을 의미함
- _(언더바)는 반드시 1개 문자가 있어야 함을 의미함
IS NULL
- NULL 값이란?
- 한 행의 특정 컬럼에 데이터 값이 없으면 그 값을 NULL이라고 함
- NULL 값은 알 수 없는 값(으로서) 0 또는 공백과 다름
- NULL 값을 포함하는 연산의 경우 결과 값도 널임
- IS NULL(값이 NULL인 값)
- =, >, < 비교 연산자를 사용한 경우 항상 조건이 FALSE가 됨
- IS NULL 연잔사를 사용해서 NULL 여부를 확인함