DB 이야기

디비 이야기 4. DML

김푸른초푸른 2020. 3. 1. 14:43

(1) DML(DATABASE MANIPULATION ) - 조작어

= 테이블에 있는 데이터의 내용을 변형하는 것 

 

1) INSERT : 테이블에 새로운 레코드(행)을 추가한다

EX) INSERT INTO 테이블명(필드명....)

VALUES(데이터 값....)

-> 필드명 수 = 데이터 값 수 

* 필드명을 쓰지 않아도 정상 작동이 되지만 나중에 자기가 뭘 추가하고 수정했는지 잘 알기위해 기입한다! 

 

[INSERT INTO SELECT]

= SELECT한 결과를 다른 테이블에 INSERT하는 방법

EX) INSERT INTO 목적지 테이블명

(컬럼명들......)

SELECT * / (컬럼명들.....) FROM 출발 테이블명

-> 각각의 테이블명은 달라야 한다! 

 

2) UPDATE : 레코드(행) 내용 수정가능 

EX) UPDATE 테이블명

SET 필드명 = 수정할 데이터값 

WHERE 조건식(필드명='값') 

// 동일한 이름이나 공통된 속성을 가진 식 전부를 바꿀시 유용

 

3) DELETE : 테이블 내용이나 부분만 삭제한다 

EX) DELETE *(전부삭제)

FROM 테이블 명

WHERE 조건식 -> 부부삭제 가능

 

4) SELECT : 테이블 내용 조회한다

EX) SELECT 출력할 열 / * 

FROM 테이블명

WHERE 조건식

 

=> 주문 : 조회한다 테이블로 부터 어디에 위치할까? 정렬은? 그룹은??

 

5) ORDER BY 

= 출력할 순서를 정해준다 

EX) WHERE문 뒤에 위치,

ORDER BY 열 이름 ASC(오르, 기본) || DESC(내리)

주의) 다른 그룹 함수보다 앞에 있는 컬럼이 뒤에 위치한 컬럼보다 기준점으로 작용한다. 

즉, 적어놓은 컬럼 순서대로 order by가 된다. 

 

5-1] order by를 null처리하는 법

1) null first 

= null값을 맨 앞으로 땡기는 방법이다

사용법) 

SELECT  * FROM T

ORDER BY COL1 NULLS FIRST

 

결과)

NULL

NULL

23

1000

2500

 

2) null last

= null값은 무조건 마지막에 배치 

사용법) 

SELECT  * FROM T

ORDER BY COL1 NULLS LAST

 

결과)

23

1000

2500

NULL

NULL

 

6) DISTINCT 

= 중복된 행을 제거 

EX) SELECT  DISTINCT 열 이름 FROM 테이블 명 

 

'DB 이야기' 카테고리의 다른 글

디비 이야기 8. 타입변환  (0) 2020.03.03
디비 이야기 7. 제어문  (0) 2020.03.03
디비 이야기 6. 연산자  (0) 2020.03.02
디비 이야기 3. DBMS와 질의어(DDL)  (0) 2020.02.29
디비 이야기 2. 데이터 베이스   (0) 2020.02.29