DML
데이터를 삽입, 삭제, 수정, 조회하는 일을 수행
CRUD : Create, Read, Update, DeleteINSERT
player 테이블에 이름이 KIM, 키는 184, 몸무게는 75 선수 데이터 추가하기
INSERT INTO player(name, height, weight) VALUES('KIM', 184, 75) ;pokemon 테이블에
포켓몬 번호 25번 이름 pikachu 속성은 Electric
포켓몬 번호 6번 이름 charizard 속성은 Fire를 저장하세요.-- 테이블 구조 CREATE TABLE pokemon ( pm_id INT PRIMARY KEY NOT NULL, name VARCHAR(20) NOT NULL, attr VARCHAR(20) DEFAULT 'normal' );INSERT INTO pokemon(pm_id, name, attr) VALUES(25, pikachu, Electric); INSERT INTO pokemon(pm_id, name, attr) VALUES(6, charizard, Fire);UPDATE
한 번 입력된 데이터를 수정해야 할 때
where과 같이 쓰도록 하자
- player 테이블의 back_no를 99로 변경하기
- player 테이블의 position을 MF로 변경하기
UPDATE player SET back_no=99 ; UPDATE player SET position = 'MF' ;DELETE
데이터를 삭제, where과 같이 쓰도록 한다.
- player 테이블의 모든 데이터를 삭제하기
- player 테이블에서 back_no가 50인 데이터만 삭제하기
DELETE [FROM] player ; DELETE [FROM] player WHERE back_no = 50 ;DELETE와 TRUNCATE 차이점
SELECT
테이블에 데이터를 조회할 때 사용
SELECT first_name, last_name, salary*12 AS annual_salary FROM employees; -- 이때 AS 키워드를 생략할 수 있습니다 SELECT first_name, last_name, salary*12 annual_salary FROM employees;--조회문 +------------+-----------+---------------+ | first_name | last_name | annual_salary | +------------+-----------+---------------+ | John | Doe | 60000 | | Jane | Smith | 72000 | | Michael | Johnson | 90000 | +------------+-----------+---------------+DISTINCT
중복된 값을 제거하여 고유한 값만 조회
CREATE TABLE employees ( employee_id NUMBER, first_name VARCHAR2(50), last_name VARCHAR2(50), department_id NUMBER ); INSERT INTO employees VALUES (1, 'John', 'Doe', 101); INSERT INTO employees VALUES (2, 'Jane', 'Smith', 102); INSERT INTO employees VALUES (3, 'John', 'Doe', 101); INSERT INTO employees VALUES (4, 'Michael', 'Johnson', 103);+------------+-----------+ | first_name | last_name | +------------+-----------+ | John | Doe | | Jane | Smith | | John | Doe | | Michael | Johnson | +------------+-----------+SELECT DISTINCT first_name, last_name FROM employees;distinct로 두 컬럼을 조회하면 두 컬럼을 조합한 고유값이 나온다.
FIRST_NAME LAST_NAME ---------- --------- John Doe Jane Smith Michael Johnson
산술연산자
-- 아래의 결과는 어떻게 될까요? SELECT 10 + 5 AS addition, 15 - 7 AS subtraction, 6 * 3 AS multiplication, 20 / 4 AS division, 17 % 5 AS modulo --나머지 연산 FROM dual;+----------+------------+----------------+----------+--------+ | ADDITION | SUBTRACTION| MULTIPLICATION| DIVISION | MODULO | +----------+------------+----------------+----------+--------+ | 15 | 8 | 18 | 5 | 2 | +----------+------------+----------------+----------+--------+pockemon 테이블에서 Pikachu의 몸무게는 현재 kg 단위로 저장이 되어 있습니다. SELECT를 이용하여 kg 기준이 아닌 파운드 단위(lbs) 기준으로 변환된 값을 조회해보세요. (1kg = 2.2 lbs)
SELECT Pikachu * 2.2 FROM poketmon ;합성연산자
서로 다른 두 문자를 하나의 문자열로 합칠 때
-- Oracle SELECT 문자형1 || 문자형2 FROM 테이블_이름; SELECT CONCAT(문자형1, 문자형2) FROM 테이블_이름;pokemon 테이블에 저장된 키는 현재 cm 단위로 입력이 되어 있습니다.
모든 데이터의 결과를 예시와 같이 조회하세요.
CREATE TABLE pokemon ( pm_id NUMBER PRIMARY KEY NOT NULL, name VARCHAR2(20) NOT NULL, attr VARCHAR2(20) DEFAULT 'normal', height NUMBER ); INSERT INTO pokemon VALUES (1, 'Bulbasaur', 'grass', 50); INSERT INTO pokemon VALUES (2, 'Ivysaur', 'grass', 90); INSERT INTO pokemon VALUES (3, 'Venusaur', 'grass', 250); INSERT INTO pokemon VALUES (4, 'Charmander', 'Fire', 80); INSERT INTO pokemon VALUES (5, 'Charmeleon', 'Fire', 120); INSERT INTO pokemon VALUES (25, 'Pikachu', 'Electric', 55);-- Oracle SELECT '포켓몬번호: ' || pm_id 번호, '이름: ' || name 이름, '속성: ' || attr 속성, '키: ' || height 키 FROM pokemon;