221115 화요일
select * | 컬럼명1, 컬럼명 2, 컬럼명3
from 테이블명
[where 좌변 = 우변 ];
[ ] → 생략가능
(컬럼명) (**비교연산자**) (값)
값 : 숫자, '문자', '날짜(YYYY-MM--DD)'
다중행비교연산자, 우변에 값리스트가 올 수 있음.
(=, OR)의 성격을 내포하고 있음.
우변의 값리스트와 비교해서 하나이상 동일하면 ture를 반환하는 비교연산자
select 컬럼명
from 테이블명
where 컬럼명 in (비교값);
select employee_id, last_name, salary, manager_id
from employees
where manager_id in (100,101,201);
-- (==)
select employee_id, last_name, salary, manager_id
from employees
where manager_id = 100 or manager_id = 101 or manager_id = 201;
select 컬럼명
from 테이블명
where 컬럼명 like '기호';
① % : 0 또는 여러개의 문자
② _ : 반드시 1개의 문자
a로 시작되는 문자열 : 'a%'
a가 포함된 문자열 : '%a%'
a로 끝나는 문자열 :'%a'
a로 시작해서 b로 끝나는 문자열 : 'a%b'
두번째 문자가 a인 문자열: '_a%'
끝에서 세번째 문자가 a인 문자열 : '%a__'
select last_name
from employees
where LAST_NAME like '_o%';
select employee_id, last_name, salary,hire_date
from employees
where HIRE_DATE like '%09%';
👉 1809-00-00,1909-00-00,0000-09-00,0000-00-09 다 나올수 있다.
👌 9월만 나오게 하려면
select employee_id, last_name, salary,hire_date
from employees
where HIRE_DATE like '_____09%';
(==) '%-09-%'
select 컬럼명
from 테이블명
where 컬럼명 is null;
select employee_id, last_name, salary,commission_pct
from employees
where COMMISSION_PCT is null;
select employee_id, last_name, salary, job_id, department_id
from employees
where (job_id = 'SA_REP'
or job_id = 'IT_PROG')
and salary >= 10000;
-- (==)
select employee_id, last_name, salary, job_id, department_id
from employees
where JOB_ID in ('SA_REP','IT_PROG')
and SALARY >= 10000;
비교연산자 | 반대 | 비교연산자 |
---|---|---|
= | ↮ | <>, != |
>,>= | ↮ | <, <= |
between A and B | ↮ | not between A and B : A미만 B초과 |
in => (=,or) | ↮ | not in => (<>, and) |
like | ↮ | not like |
is null | ↮ | is not null |
select * | 컬럼명1, 컬럼명2, 컬럼명3
from 테이블명
[where 조건문]
[order by 컬럼명 | 표현식 | 컬럼alias | 위치표기법 [asc | desc]];
1 2 3 4 5
select employee_id, last_name, salary, job_id, department_id
from employees
where DEPARTMENT_ID < 80
order by 5;
요구사항 수집 및 분석
개념 모델링
→ 피터첸의 ERD(뼈대)
테이블, 컬럼, 관계 등이 결정된다.
논리 모델링
→ 구체화된 ERD(IE표기법, 테이블 차트)
데이터타입,컬럼사이즈,제약조건 등이 결정됨.
물리 모델링
→ DB에 테이블 구현(create table ----;)