3. SQL 1 - DML
DML(Database Manipulation Language)
DML의 대표 키워드
- Insert
- Delete
- Update
- Select
- 입력(Insert into ~ values)
Insert into course values ('437', 'Advanced Databases', 'CS', 4); //course table에 ('437', 'Advanced Databases', 'CS', 4) tuple 추가.
Insert into professor values select * from professor; //professor table에 tuple이 두 배가 됨.
- 삭제(Delete from ~)
Delete from professor;
Delete from professor Where deptName='EE';
Delete from professor Where salary < (select avg(salary) from professor);
- 갱신(Update ~ set ~)
Update professor set salary = salary *1.03 where salary>7000;
Update professor set salary = salary *1.05 where salary<=7000;
→ 위처럼 해야 인상을 중복 적용되는 경우를 방지할 수 있다. 혹은 아래처럼 case 문장을 사용하면 좋다.(case-when-then-else-end)
Update professor
set salary = case
when salary <= 7000 then salary*1.05
else salary*1.03
end;
- Select 문장
: 주어진 조건에 적합한 데이터(relation)를 검색하여 반환함.
1) 6개의 절을 가질 수 있고 다음과 같은 순서로 작성하여야 함.
Select //필수
From //필수
Where
Group by
Having //Group by 없으면 못 씀.
Order by
2) "*" 기호는 모든 속성을 의미함.
ex) Select * from professor;
3) SQL 언어는 tuple의 중복을 허용함.
→ 만약, 중복을 허용하고 싶지 않다면 distinct 키워드를 사용하면 된다.
ex) Select distinct deptName from professor;
4) 중복을 허용하려면 all 키워드를 사용하면 됨.(하지만 all은 default값이기에 구우욷이~~안 써도 됨)
ex) Select all deptName from professor;
-