๐ ์ธ๋ฑ์ค( Index )
๋ฐ์ดํฐ๋ฅผ ์ฝ๊ณ ๋น ๋ฅด๊ฒ ์ฐพ์ ์ ์๋๋ก ๋ง๋ ๋ฐ์ดํฐ ๊ตฌ์กฐ์ด๋ค.
๋น ๋ฅธ ํ์ ์๋๋ฅผ ์ํด ์ฌ์ฉํ๋ ๊ธฐ์ ์ด๋ค.
๐ ์ธ๋ฑ์ค ์์ฑ ๊ณ ๋ ค์ฌํญ
WHERE์ ์ ์์ฃผ ์ฌ์ฉ๋๋ ์์ฑ
์กฐ์ธ์ด ์์ฃผ ์ฌ์ฉ๋๋ ์์ฑ
๋จ์ผ ํ ์ด๋ธ์ ์ธ๋ฑ์ค ๋ง์ผ๋ฉด ์๋๊ฐ ๋๋ ค์ง๋ค. (3~4๊ฐ ๊ถ์ฅ)
๐ ์ธ๋ฑ์ค์ ์ข ๋ฅ
์๋์ธ๋ฑ์ค: ๊ธฐ๋ณธํค(PK), UNIQUE ๊ท์น์ ์ํด ์๋์ผ๋ก ์์ฑ๋๋ ์ธ๋ฑ์ค์ด๋ค.
์๋์ธ๋ฑ์ค: CREATE INDEX ๋ช ๋ น์ผ๋ก ์์ฑ๋ ์ธ๋ฑ์ค์ด๋ค.
๐ ํ ์ด๋ธ์ ํฌ๊ธฐ๊ฐ ์๊ฑฐ๋, ์์ฃผ ๊ฐฑ์ ๋ ๋ ์ธ๋ฑ์ค๋ฅผ ์ฌ์ฉํ์ง์๋๋ค.
๐ ์ธ๋ฑ์ค๋ฅผ ์ฌ์ฉํด ํ์
์์ ๊ฒฐ๊ณผ๋ ์ธ๋ฑ์ค๋ฅผ ์ฌ์ฉํ๊ธฐ ์ ๊ฒฐ๊ณผ์ด๊ณ , ๋ฐ์ ๊ฒฐ๊ณผ๊ฐ ์ธ๋ฑ์ค๋ฅผ ์ฌ์ฉํ ํ์ ๊ฒฐ๊ณผ์ด๋ค.
COST๋ฅผ ๋ณด๋ฉด 2์ฉ ๋ด๋ ค๊ฐ๋ค.
๐ ์ธ๋ฑ์ค์ ์ฌ์ฉํ ์ ํ์์ ํจ์จ์ ๋น๊ตํด๋ณด์์ ๋ ์ธ๋ฑ์ค๋ฅผ ์ฌ์ฉํ๋ฉด ์ ์๋ฏธํ ๊ฒฐ๊ณผ๊ฐ ๋์ค๋ ๊ฒ์ ํ์ธํ ์ ์๋ค.
SELECT
TABLE_NAME,
INDEX_NAME,
COLUMN_NAME
FROM ALL_IND_COLUMNS
WHERE TABLE_NAME = 'EMP';
CREATE TABLE members (
member_id NUMBER,
first_name VARCHAR2(100) NOT NULL,
last_name VARCHAR2(100) NOT NULL,
gender CHAR(1) NOT NULL,
email VARCHAR2(225) NOT NULL,
dob DATE,
PRIMARY KEY(member_id)
);
-- ์ฃผ์ ํด์ ํ ์คํ
-- @C:\Users\user\Downloads\member_data_1000\member_data_1000.sql
--๊ธฐ๋ณธ๊ฒ์ ํ
์คํธ
--last_name์ด 'Harse'์ธ์ง 1000๋ฒ ์กฐํ
SELECT * FROM members
WHERE last_name = 'Harse';
-- ์ธ๋ฑ์ค๋ฅผ ํน์ ์ด์ ๋ง๋ค๊ธฐ
CREATE INDEX members_last_name_i
ON members(last_name);
--์ธ๋ฑ์คํ์ธ
SELECT
TABLE_NAME,
INDEX_NAME,
COLUMN_NAME
FROM ALL_IND_COLUMNS
WHERE TABLE_NAME = 'MEMBERS'; --ํ
์ด๋ธ๋ช
์ ๋๋ฌธ์!
DROP INDEX members_last_name_i;
์ฐธ๊ณ ์๋ฃ: https://blog.naver.com/drv98/221662834321
'๐.๋์ธํ๋ > ๐.์นด์นด์คํด๋ผ์ฐ๋์ค์ฟจ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[JavaScript] ๊ฐ์ฒด (0) | 2024.01.17 |
---|---|
[DB] ๋ทฐ VIEW (0) | 2024.01.03 |
[DB] ์ ๊ทํ (0) | 2024.01.02 |
[DB] ๋ถ์ ์ง์(sub query) ์ฐ์ต๋ฌธ์ (0) | 2023.12.29 |
[DB] ๋ถ์ ์ง์(subquery) (0) | 2023.12.29 |