* INSERT
▶ INSERT INTO 테이블명 (COLUMN_LIST)VALUES (COLUMN_LIST에 넣을 VALUE_LIST);
▶ INSERT INTO 테이블명VALUES (전체 COLUMN에 넣을 VALUE_LIST);
- 해당 컬럼명과 입력되어야 하는 값을 1:1로 매핑하여 입력
[예제] 선수 테이블에 박지성 선수의 데이터를 일부 칼럼만 입력한다.
[예제] ▶ 테이블명 : PLAYER INSERT INTO PLAYER (PLAYER_ID, PLAYER_NAME, TEAM_ID, POSITION, HEIGHT, WEIGHT, BACK_NO) VALUES ('2002007', '박지성', 'K07', 'MF', 178, 73, 7); 1개의 행이 만들어졌다.
[예제] 해당 테이블에 이청용 선수의 데이터를 입력해본다.
[예제] INSERT INTO PLAYER VALUES ('2002010','이청용','K07','','BlueDragon','2002','MF','17',NULL, NULL,'1',180,69); 1개의 행이 만들어졌다.
* UPDATE
- 잘못 입력되었거나 변경을 위해 정보를 수정해야 하는 경우
UPDATE 테이블명 SET 수정되어야 할 칼럼명 = 수정되기를 원하는 새로운 값;
[예제] 선수 테이블의 백넘버를 일괄적으로 99로 수정한다.
[예제] UPDATE PLAYER SET BACK_NO = 99; 480개의 행이 수정되었다.
[예제] 선수 테이블의 포지션을 일괄적으로 ‘MF’로 수정한다.
[예제] UPDATE PLAYER SET POSITION = 'MF'; 480개의 행이 수정되었다.
* DELETE
- 테이블의 정보가 필요 없게 되었을 경우 데이터 삭제
DELETE [FROM] 삭제를 원하는 정보가 들어있는 테이블명;
[예제] 선수 테이블의 데이터를 전부 삭제한다.
[예제] DELETE FROM PLAYER; 480개의 행이 삭제되었다.
- DML의 경우 테이블을 메모리 버퍼에 올려놓고 작업해서 실시간으로 테이블에 영향을 미치지 않음
- 실제 테이블에 반영되기 위해서 COMMIT 명령어를 입력하여 트랜잭션을 종료해야 함
- SQL 서버의 경우 DML도 AUTO COMMIT으로 처리되어 실제 테이블 반영을 위해 COMMIT 명령어 입력
- 복구를 원할 경우 ROLLBACK을 이용하여 원 상태로 돌림
* SELECT
[예제] 조회하기를 원하는 칼럼명을 SELECT 다음에 콤마 구분자(,)로 구분하여 나열하고,
FROM 다음에 해당 칼럼이 존재하는 테이블명을 입력하여 실행시킨다. 입력한 선수들의 데이터를 조회한다.
[예제] SELECT PLAYER_ID, PLAYER_NAME, TEAM_ID, POSITION, HEIGHT, WEIGHT, BACK_NO FROM PLAYER;
- DISTINCT
[예제 및 실행 결과] SELECT ALL POSITION FROM PLAYER; ALL은 생략 가능한 키워드이므로 아래 SQL 문장도 같은 결과를 출력한다, SELECT POSITION FROM PLAYER; 480개의 행이 선택되었다.
[예제] SELECT DISTINCT POSITION FROM PLAYER;
[실행 결과] Oracle POSITION -------- GK DF FW MF 5개의 행이 선택되었다.
- WILDCARD 사용하기
[예제] 입력한 선수들의 정보를 모두 조회한다.
[예제] SELECT * FROM PLAYER;
- ALIAS 부여하기 : 별명을 부여해서 컬럼 레이블 변경
[예제] 입력한 선수들의 정보를 칼럼 별명을 이용하여 출력한다.
[예제] SELECT PLAYER_NAME AS 선수명, POSITION AS 위치, HEIGHT AS 키, WEIGHT AS 몸무게 FROM PLAYER;
칼럼 별명에서 AS를 꼭 사용하지 않아도 되므로, 아래 SQL은 위 SQL과 같은 결과를 출력한다.
SELECT PLAYER_NAME 선수명, POSITION 위치, HEIGHT 키, WEIGHT 몸무게 FROM PLAYER;
[예제] 칼럼 별명을 적용할 때 별명 중간에 공백이 들어가는 경우 『" " 』를 사용해야 한다. SQL Server의 경우『" "』, 『' 』', 『[ ]』와 같이 3가지의 방식으로 별명을 부여할 수 있다.
[예제] SELECT PLAYER_NAME "선수 이름", POSITION "그라운드 포지션", HEIGHT "키", WEIGHT "몸무게" FROM PLAYER;
* 산술연산자
- NUMBER와 DATE 자료형에 대해 적용
[예제] 선수들의 키에서 몸무게를 뺀 값을 알아본다.
[예제] SELECT PLAYER_NAME 이름, HEIGHT - WEIGHT "키-몸무게" FROM PLAYER;
[예제] 선수들의 키와 몸무게를 이용해서 BMI(Body Mass Index) 비만지수를 측정한다. ※ 예제에서 사용된 ROUND( ) 함수는 반올림을 위한 내장 함수로써 6절에서 학습한다
[예제] SELECT PLAYER_NAME 이름, ROUND(WEIGHT/((HEIGHT/100)*(HEIGHT/100)),2) "BMI 비만지수" FROM PLAYER;
출력 형태) 선수명 선수, 키 cm, 몸무게 kg 예) 박지성 선수, 176 cm, 70 kg
[예제] Oracle SELECT PLAYER_NAME || '선수,' || HEIGHT || 'cm,' || WEIGHT || 'kg' 체격정보 FROM PLAYER;
[예제] SQL Server SELECT PLAYER_NAME +'선수, '+ HEIGHT +'cm, '+ WEIGHT +'kg'체격정보 FROM PLAYER;
'SQLD' 카테고리의 다른 글
[SQLD : Ⅲ. SQL 기본] 5. WHERE절 (0) | 2020.08.17 |
---|---|
[SQLD : Ⅲ. SQL 기본] 4. TCL (0) | 2020.08.16 |
[SQLD : Ⅲ. SQL 기본] 2. DDL (0) | 2020.08.16 |
[SQLD : Ⅲ. SQL 기본] 1. 관계형 데이터베이스 개요 (0) | 2020.08.16 |
[SQLD : Ⅱ. 데이터 모델과 성능] 6-2. 분산데이터베이스와 성능 - 적용기법 (0) | 2020.08.16 |