🌱 오늘의 주제 : Oracle Database
🌱 CREATE
CREATE Table topic (
id NUMBER NOT NULL,
title VARCHAR2(50) NOT NULL,
description VARCHAR2(4000),
created DATE NOT NULL
);
🌱 SELECT
SELECT * FROM
topci OFFSET 1 ROWS
FETCH NEXT 2 ROWS ONLY;
1번째부터 시작하는 행을 2개 가져온다.
🌱 UPDATE
* 주의 - where절이 꼭 있어야함
UPDATE topic
SET
title = 'MSSQL',
description = 'MSSQL is ...'
WHERE
id = 3;
🌱 DELETE
* 주의 - where절이 꼭 있어야함
DELETE FROM topic WHERE id = 3;
🌱 DROP
테이블 삭제
DROP TABLE topic;
🌱 PRIMARY
CREATE Table topic (
id NUMBER NOT NULL,
title VARCHAR2(50) NOT NULL,
description VARCHAR2(4000),
created DATE NOT NULL
CONSTRAINT PK_TOPIC PRIMARY KEY(id)
);
topic이라는 이름의 테이블의 id에 제약조건을 걸겠다.
primary 키를 지정해서 id를 찾는 것은 엄청난 속도발전이 있다.
🌱 SEQUENCE
- Primary와 SEQUENCE는 family라고 생각하자. 같이 있을 때 강력해진다.
CREATE SEQUENCE SEQ_TOPIC;
- primary 키가 자동으로 생성
INSERT INTO topic
(id, title, description, created)
VALUES
(SEQ_TOPIC.NEXTVAL, 'ORACLE', 'ORACLE is...', SYSDATE);
- 현재 sequence 알 수 있는 방법 // dual은 가상 테이블이라는 뜻으로, 딱 1개의 sequence만 보여준다.
SELECT SEQ_TOPIC.CURRVAL FROM DUAL;
🌱 JOIN
- LEFT JOIN
SELECT * FROM topic
LEFT JOIN author
ON topic.author_id = author.id;
- 컬럼명 변경(별명)
- topic.id 컬럼명을 TOPIC_ID로 변경
- topic 컬럼명을 T로 변경
SELECT topic.id TOPIC_ID,
title,
name
FROM topic T
LEFT JOIN author
ON topic.author_id = author.id;
SELECT T.id TOPIC_ID,
title,
name
FROM topic T
LEFT JOIN author
ON T.author_id = author.id;
SELECT T.id TOPIC_ID,
title,
name
FROM topic T
LEFT JOIN author A
ON T.author_id = A.id;
WHERE
T.id = 1;
'Database' 카테고리의 다른 글
Database - 테이블의 설계 방식 (0) | 2023.08.13 |
---|---|
Database - DDL 대 DML (0) | 2023.08.03 |
UNIQUE 삭제 후 다시 설정하기. (0) | 2023.05.30 |
Mysql Query - SELECT문 (0) | 2023.05.24 |
Database - 테이블 JOIN (0) | 2023.03.13 |