본문 바로가기
데이터베이스/SQLD

[DML] INSERT, UPDATE, SELECT

by 나는 유찌 2020. 6. 7.

* 모든 쿼리는 oracle을 기준으로 작성하였습니다.

* SQL 전문가 가이드로 공부하고 작성하였습니다.

 

 

 

 

INSERT


테이블에 데이터를 입력합니다.

 

구문

INSERT INTO 테이블명 (COLUMN_LIST)
VALUES (COLUMN_LIST에 넣을 VALUE_LIST);
INSERT INTO 테이블명
VALUES (전체 COLUMN에 넣을 VALUE_LIST);

 

예제 쿼리

* USERS라는 테이블에 NAME, AGE, HEIGHT, WEIGHT라는 칼럼을 만들었습니다.

INSERT INTO USERS (NAME, AGE) VALUES ('유찌', '23');
INSERT INTO USERS (NAME, AGE) VALUES ('짱구', '5');
INSERT INTO USERS VALUES ('유찌', '23', NULL, NULL);

위의 2개의 쿼리는 데이터를 넣을 칼럼을 지정하고 데이터를 넣는 것을 확인할 수 있습니다.

맨 아래의 쿼리는 데이터를 넣을 칼럼을 지정하지 않고 해당 테이블의 칼럼수의 맞도록 데이터 값을 넣는 것을 확인할 수 있습니다.

 

 

 

 

UPDATE


입력한 정보 중 잘못 입력되거나 변경이 발생하여 정보를 수정해야 하는 경우에 사용합니다.

 

구문

UPDATE 테이블명
SET 수정되어야 할 칼럼명 = 수정되기를 원하는 새로운 값;

 

예제 쿼리

UPDATE USERS SET AGE = '5' WHERE NAME = '유찌';

USERS 테이블의 NAME이 '유찌'인 데이터의 AGE 칼럼 값을 5로 변경하겠다는 뜻입니다.

 

결과

 

 

 

DELETE


테이블의 정보가 필요없게 되었을 경우 데이터 삭제를 수행합니다.

 

구문

DELETE [FROM] 삭제를 원하는 정보가 들어있는 테이블명;

 

 

 

 

SELECT


사용자가 입력한 데이터를 조회합니다.

 

구문

SELECT [ALL/DISTINCT] 칼럼명, 칼럼명
FROM 테이블명;

ALL : 중복된 데이터가 있어도 모두 출력합니다. (DEFAULT 옵션이므로 굳이 표시하지 않아도 됩니다.)

DISTINCT : 중복된 데이터가 있는 경우 1건으로 처리해서 출력합니다.

 

예제 쿼리

SELECT * FROM USERS;

*은 해당 테이블의 모든 칼럼의 데이터를 출력하겠다는 뜻입니다.

 

SELECT NAME FROM USERS;

USERS 테이블의 NAME 칼럼의 데이터만 출력하겠다는 뜻입니다.

 

SELECT DISTINCT NAME FROM USERS;

USERS 테이블의 NAME 칼럼의 데이터를 출력하되 중복되는 값을 제외하고 출력하겠다는 뜻입니다.

 

SELECT NAME AS 이름, AGE AS 나이 FROM USERS;

AS는 일종의 별명입니다.

NAME 칼럼의 이름을 '이름'이라고 출력하고, AGE 칼럼은 '나이'라고 출력하겠다는 뜻입니다.

 

결과

 

'데이터베이스 > SQLD' 카테고리의 다른 글

[TCL] 트랜잭션  (0) 2020.06.07
[DDL] ALTER TABLE  (0) 2020.06.07
[DDL] CREATE TABLE  (0) 2020.06.07
데이터 유형 (CHAR, VARCHAR, NUMERIC, DATE)  (0) 2020.06.07
관계형 데이터베이스, SQL, TABLE  (0) 2020.06.07