๋ฐ˜์‘ํ˜•

 

SELECT๋ฌธ์—์„œ ๋งŽ์ด ์‚ฌ์šฉ๋˜๋Š” ํ‚ค์›Œ๋“œ

 

DISTINCT ํ‚ค์›Œ๋“œ

 

DISTINCT ๋’ค์— ์ง€์ •ํ•œ ์—ด์ด ํ•œ ๊ฐœ์ผ ๊ฒฝ์šฐ

 

SELECT DISTINCT ์—ด ์ด๋ฆ„ FROM ํ…Œ์ด๋ธ”๋ช…;

 

์—ด ์ด๋ฆ„ ์•ž์— DISTINCT๋ฅผ ์ ์œผ๋ฉด ๊ฐ’์˜ ์ค‘๋ณต ์—†์ด ์ถœ๋ ฅ๋จ

 

 

DISTINCT ๋’ค์— ์ง€์ •ํ•œ ์—ด์ด ์—ฌ๋Ÿฌ ๊ฐœ์ผ ๊ฒฝ์šฐ

 

SELECT DISTINCT ์—ด ์ด๋ฆ„1, ์—ด ์ด๋ฆ„2 FROM ํ…Œ์ด๋ธ”๋ช…;

 

 

EMP ํ…Œ์ด๋ธ”

 

1. EMP ํ…Œ์ด๋ธ”์— ์–ด๋˜ ์ง๊ธ‰๋“ค์ด ํฌํ•จ๋˜์–ด ์žˆ๋Š”์ง€ ํ™•์ธํ•˜๋ ค๋ฉด?

 

SELECT DISTINCT POSITION FROM EMP;

 

 

2. EMP ํ…Œ์ด๋ธ”์—์„œ ์ง๊ธ‰์— ๋”ฐ๋ผ ์–ด๋–ค ์ธ์‚ฌ๊ณ ๊ณผ๋ฅผ ๋ฐ›์•˜๋Š”์ง€ ํ™•์ธํ•˜๋ ค๋ฉด?

 

SELECT DISTINCT POSITION, GRADE FROM EMP;

 

1. DISTINCT ํ‚ค์›Œ๋“œ์˜ ๋ฐ˜๋Œ€๋Š” ALL ํ‚ค์›Œ๋“œ์ด๋‹ค!

=> DISTINCT ํ‚ค์›Œ๋“œ๊ฐ€ ์ค‘๋ณต๋˜๋Š” ๊ฐ’์„ ์ œ๊ฑฐํ•˜๋Š” ๋ฐ˜๋ฉด ALL ํ‚ค์›Œ๋“œ๋Š” ์ค‘๋ณต์„ ๊ณ ๋ คํ•˜์ง€ ์•Š๊ณ  ๋ชจ๋“  ๊ฐ’์„ ์ถœ๋ ฅํ•œ๋‹ค

(๋งŒ์•ฝ DISTINCT ํ‚ค์›Œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š์œผ๋ฉด ๊ธฐ๋ณธ๊ฐ’์€ ALL ํ‚ค์›Œ๋“œ๋กœ ์„ค์ •๋จ)

2. DISTINCT ํ‚ค์›Œ๋“œ๋Š” ์ง‘๊ณ„ ํ•จ์ˆ˜์™€ ํ•˜๋ถ€ ์ฟผ๋ฆฌ์—์„œ ๋งŽ์ด ์‚ฌ์šฉ๋œ๋‹ค

=> ์ง‘๊ณ„ ํ•จ์ˆ˜ ์ค‘ COUNT๋ผ๋Š” ํ•จ์ˆ˜๊ฐ€ ์žˆ๋Š”๋ฐ 'COUNT(*)'๋Š” NULL ๊ฐ’์„ ํฌํ•จํ•œ ๋ชจ๋“  ํ–‰(row)์„ ์นด์šดํŠธ ํ•˜๋ผ๋Š” ์˜๋ฏธ์ด๊ณ , 'COUNT(DISTINCT POSITION)'๋Š” ์ค‘๋ณต์„ ํ—ˆ์šฉํ•˜์ง€ ๋ง๊ณ  ๋ช‡ ๊ฐœ์˜ ์ง๊ธ‰์ด ์žˆ๋Š”์ง€ ์นด์šดํŠธํ•˜๋ผ๋Š” ์˜๋ฏธ์ด๋‹ค

 

ALIAS(๋ณ„์นญ)

 

 

AS ์‚ฌ์šฉํ•˜๊ธฐ

 

AS ํ‚ค์›Œ๋“œ์˜ ์•ž์—๋Š” ๋ฐ”๊พธ๊ณ  ์‹ถ์€ ์—ด ์ด๋ฆ„, ๋’ค์—๋Š” ์ƒˆ๋กœ์šด ์—ด ์ด๋ฆ„์„ ์ ์œผ๋ฉด ๋œ๋‹ค

SELECT ์—ด ์ด๋ฆ„ AS ์ƒˆ๋กœ์šด ์—ด ์ด๋ฆ„ FROM ํ…Œ์ด๋ธ”๋ช…;

 

 

 

์ธ์šฉ๋ถ€ํ˜ธ(" ") ์‚ฌ์šฉํ•˜๊ธฐ

 

์ƒˆ๋กญ๊ฒŒ ์ง€์ •ํ•˜๊ณ  ์‹ถ์€ ์—ด ์ด๋ฆ„์— ์ธ์šฉ๋ถ€ํ˜ธ(" ") ์‚ฌ์šฉํ•˜๋ฉด ๋œ๋‹ค

=> ๊ณต๋ฐฑ, ํ•œ๊ธ€, ํŠน์ˆ˜๋ฌธ์ž ๋“ฑ์„ ํฌํ•จํ•ด์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ ์‚ฌ์šฉ๋˜๋Š” ๋ฐฉ๋ฒ•์ž„

 

SELECT ์—ด ์ด๋ฆ„ "์ƒˆ๋กœ์šด ์—ด ์ด๋ฆ„" FROM ํ…Œ์ด๋ธ”๋ช…;

 

EMP ํ…Œ์ด๋ธ”

 

1. EMP ํ…Œ์ด๋ธ”์—์„œ ์‚ฌ๋ฒˆ์„ ๋‚˜ํƒ€๋‚ด๋Š” ID๋ฅผ CLERK_ID๋กœ, ์ธ์‚ฌ๊ณ ๊ณผ๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” GRADE๋ฅผ PERF๋กœ ๋ฐ”๊ฟ” ์ƒˆ๋กญ๊ฒŒ ์ด๋ฆ„์„ ๋ถ€์—ฌํ•˜๋ ค๋ฉด?

 

SELECT ID AS CLERK_ID, POSITION, PARTY_NM, MANAGER_ID, TEAM_NM, GRADE AS PERF
FROM EMP;

 

2. EMP ํ…Œ์ด๋ธ”์—์„œ ์ธ์‚ฌ๊ณ ๊ณผ๋ฅผ ์ฃผ๊ณ  ์žˆ๋Š” ์‚ฌ๋žŒ ์ˆ˜๋ฅผ CNT๋ผ๋Š” ๋ณ„์นญ์„ ์‚ฌ์šฉํ•ด์„œ ๊ตฌํ•˜๋ ค๋ฉด?

 

SELECT COUNT(DISTINCT MANAGER_ID) AS CNT
FROM EMP;
๋ฐ˜์‘ํ˜•