본문 바로가기

DB/SQLD

SQL 기본 - DML

반응형

DML (Data Manipulation language)

테이블 '구조'가 아닌 생성된 테이블에 '레코드, 데이터' 를 컨트롤하는 명령어

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
1. 레코드 삽입
INSERT INTO PLAYER (PLAYER_ID, PLAYER_NAME, TEAM_ID, POSITION, HEIGHT, WEIGHT, BACK_NO) VALUES ('2002007','박지성','K07','MF',178,73,7);
// INSERT 구문으로 삽입할 칼럼명과 값을 입력한다.
// 문자열은 반드시 '' 로 감싸고 NUMBER는 그냥 숫자로 입력한다.
// 전체 칼럼을 입력할 때는 굳이 칼럼명은 없어도 된다. 대신 VALUES 이후에 순서대로 입력해주어야 한다.
 
2. 레코드 수정
UPDATE PLAYER
SET BACK_NO = 99;
// PLAYER 테이블의 레코드 전체에 대해 백넘버 칼럼을 99로 변경 -> 일반적이지 않음
// WHERE 절을 통해 특정 레코드만 변경하는게 일반적임
 
3. 레코드 삭제
DELETE FROM PLAYER;
// PLAYER 테이블의 전체 레코드 삭제
 
4. 레코드 검색
SELECT [ALL/DISTINCT] PLAYER_ID, PLAYER_NAME, TEAM_ID, POSITION, HEIGHT, WEIGHT, BACK_NO
FROM PLAYER;
// DISTINCT를 옵션으로 넣으면 중복되는 컬럼은 추가로 처리하지 않음
// 와일드카드(*) 사용할 수 있음 * = 모든 컬럼
SELECT * FROM PLAYER;
 
5. ALIAS(별명) 부여
SELECT PLAYER_NAME 선수명, POSITION 포지션, HEIGHT 키
FROM PLAYER;
// 칼럼뒤에 'AS 선수명' 혹은 그냥 '선수명' 같이 결과에서 칼럼명을 변경해서 볼 수 있음
// ALIAS에 공백이 들어간 경우 즉, 두 단어이상이면 "" 로 묶어야 함
 
6. 산술연산 (*,/,+,-)
SELECT PLAYER_NAME 이름, HEIGHT - WEIGHT "키-몸무게"
FROM PLAYER;
// 키에서 몸무게를 뺀 값이 "키-몸무게" 컬럼에 출력됨
 
7. 합성
SELECT PLAYER_NAME || '선수,' || HEIGHT || 'CM,' || WEIGHT || 'KG' 체격정보
FROM PLAYER;
// 문자와 문자를 연결하는 경우 (||)에 의해 이루어 짐
// 다른 방법으로는 CONCAT(STRING1, STRING2)를 통해 두 문자열 합성 가능
// 결과적으로 체격정보라는 칼럼이 만들어지면서 '박지성선수,180CM,72KG' 같은 레코드가 출력된다.
 
 
//주요 특징 : DML 은 AUTO COMMIT으로 처리되지 않기 때문에 실시간으로 변경되는 것이 아님. 즉 테이블에 영향을 미치지 않음 COMMIT하기 전까지.
             반면에 DDL은 AUTO COMMIT이라서 명령하는 즉시 테이블에 영향을 
 



반응형

'DB > SQLD' 카테고리의 다른 글

SQL 기본 - group by, having 절  (0) 2017.09.03
SQL 기본 - 함수  (0) 2017.09.02
SQL 기본 - where 절  (0) 2017.09.01
SQL 기본 - TCL  (0) 2017.08.31
SQL 기본 - DDL  (0) 2017.08.27