데이터 조작어 data manipulation language
테이블에 데이터를 입력하는 방법은 두 가지 유형이 있으며, 한 번에 한 건만 입력된다.
a. INSERT INTO 테이블명 (CONLUMN_LIST)
VALUES (COLUMN_LIST에 넣을 VALUE_LIST);
b. INSERT INTO 테이블명
VALUES (전체 COLUMN에 넣을 VALUE_LIST);
INSERT INTO STUDENT (STUDENT_ID, DEPT_ID, NAME, GRADE)
VALUES ('20231111', 'MT2353', '김철수', 3);
INSERT INTO STUDENT
VALUES ('2023111', '김철수', 'MT2353', 3, '서울시 마포구', NULL);
UPDATE는 다음에 수정되어야 할 칼럼이 존재하는 테이블명을 입력하고, SET 다음에 수정되어야 할 칼럼명과 해당 칼럼 수정값으로 변경이 이루어진다.
UPDATE 테이블명
SET 수정되어야 할 칼럼명 = 수정되기를 원하는 새로운 값;
예)
UPDATE STUDENT
SET DEPT_ID = '미정';
UPDATE STUDENT
SET DEPT_ID = '미정' WHERE WHERE GRADE = 1;
DELETE [FROM] 삭제를 원하는 정보가 들어있는 테이블명;
SELECT [ALL/DISTINCT] 보고싶은 칼럼명, 보고싶은 칼럼명,...
FROM 해당 칼럼들이 있는 테이블명;
예)
SELECT STUDENT_ID, NAME
FROM STUDENT;
SELECT ALL GRADE
FROM STUDENT; // NNN개의 행 선택됨SELECT DISTINCT GRADE
FROM STUDENT; // 5개의 행 선택됨 (1, 2, 3, 4, NULL)SELECT *
FROM 테이블명;SELECT STUDENT_ID AS 학번, NAME AS 이름, GRADE AS 학년
FROM STUDENT;
//AS 생략도 가능
SELECT STUDENT_ID 학번, NAME 이름, GRADE 학년
FROM STUDENT;
//공백, 특수문자 포함 또는 대소문자 구분 필요 시 이중 인용부호("") 사용
SELECT STUDENT_ID "학생 번호", NAME "학생 이름", GRADE "Grade"
FROM STUDENT;// 소수점 셋째 자리에서 반올림 (소수점 2자리)
SELECT PLAYER 선수, ROUND(WEIGHT/((HEIGHT/100)*(HEIGHT/100)),2) "BMI 지수"
FROM PLAYER;SELECT PLAY_NAME ||'선수,' || HEIGHT || 'cm,' || WEIGHT || 'kg' 체격정보
FROM PLAYER;
출력 예)
체격정보
김철수 선수, 173cm, 65kg
박철수 선수, 178cm, 75kg
이철수 선수, 183cm, 79kgSELECT PLAY_NAME +'선수,' + HEIGHT + 'cm,' + WEIGHT + 'kg' 체격정보
FROM PLAYER;
출력 예) 위와 같음DUAL 테이블
Oracle에서 제공하는 가상 테이블
임시로 간단한 연산이나 테스트를 실행할 때에도, Oracle은 문법 상 FROM을 사용하야만 함
→ 이를 DUAL 테이블로 대체
SELECT 1 + 1 FROM dual;
즉, 사용자 테이블이 필요 없는 SQL 문장의 경우에도 필수적으로 DUAL이라는 테이블을 FORM 절에 지정한다.