[SQL] select๋ฌธ ๊ธฐ๋ณธ

[์›๋ณธ ๋งํฌ]

ํ…Œ์ŠคํŠธ ํ™˜๊ฒฝ์€ MySQL์ด๋‹ค.

select๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์ฝ์–ด์˜ค๋Š” ์—ญํ• ์„ ํ•œ๋‹ค.
๊ธฐ๋ณธ์ ์œผ๋กœ ์•„๋ž˜์˜ ํ˜•ํƒœ๋ฅผ ๊ฐ–๋Š”๋‹ค.


select ์†์„ฑ๋ชฉ๋ก from ํ…Œ์ด๋ธ”๋ช…

์ถ”๊ฐ€๋กœ ๋” ๋ถ™๋Š”๊ฒŒ ์žˆ๊ธด ํ•˜๋‹ค๋งŒ...
์ผ๋‹จ ์ด๋Ÿฐ์‹์œผ๋กœ ์†์„ฑ๋ชฉ๋ก์— ์†์„ฑ์„ ์ฃ„๋‹ค ์จ์ฃผ๋ฉด ์ด๋ ‡๊ฒŒ ๋‹ค ์ถœ๋ ฅํ•ด์ค€๋‹ค.

๊ทผ๋ฐ ๋งค๋ฒˆ ์ €๋Ÿฌ๋ ค๋ฉด ์ข€ ๋ถˆํŽธํ•˜๋‹ค.
์†์„ฑ๋ชฉ๋ก์— *๋ฅผ ์“ฐ๋ฉด ๋ชจ๋“  ์†์„ฑ์„ ์ถœ๋ ฅํ•˜๊ฒŒ ํ•ด์ค€๋‹ค.

ํ•˜๋‚˜์”ฉ ์ถœ๋ ฅํ•˜๋Š” ๊ฒƒ๋„ ์ž˜ ๋œ๋‹ค.



์ค‘๋ณต์ œ๊ฑฐ distinct

๋ฐ”๋กœ ์œ„์—์„œ๋Š” ๊ฒน์น˜๋Š” ๊ฐ’์ด ์žˆ์–ด๋„ ์ „๋ถ€ ์Ÿ์•„๋ƒˆ๋‹ค.
๊ทผ๋ฐ ์ด๋Ÿฌ๋ฉด ๊ฒฝ์šฐ์— ๋”ฐ๋ผ์„œ ๋…ผ๋ฆฌ์ ์ธ ๊ฒฐํ•จ์ด ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋‹ค.
๊ฐ€๋ น ๋‹จ์ˆœํžˆ ์กด์žฌํ•˜๋Š” ํ•™๊ต์˜ ๋ชฉ๋ก์ด๋‚˜ ํ•™๋…„์˜ ๋ชฉ๋ก๋งŒ ํ•„์š”ํ•œ๊ฑฐ๋ผ๋ฉด? ์นด์ด์ŠคํŠธ๊ฐ€ 3๊ฐœ๋‚˜ ์žˆ์„ ํ•„์š”๊ฐ€ ์žˆ๋Š”๊ฐ€?
์ด๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•œ ๊ฒƒ์ด distinct๋‹ค.

select ๋’ค์— distinct๋ฅผ ๋ถ™์—ฌ์ฃผ๋ฉด ์ค‘๋ณต๊ฐ’์„ ์ง€์šด ์ƒํƒœ๋กœ ์ถœ๋ ฅํ•ด์ค€๋‹ค.



order by ์ ˆ

order by ์ ˆ์„ ๋ง๋ถ™์ด๋ฉด ์ถœ๋ ฅ ๋ชฉ๋ก์„ ์›ํ•˜๋Š”๋Œ€๋กœ ์ •๋ ฌ์‹œํ‚ฌ ์ˆ˜ ์žˆ๋‹ค.
by ๋’ค์—๋Š” ์ •๋ ฌ์˜ ๊ธฐ์ค€์ด ๋  ์†์„ฑ์ด ๋“ค์–ด๊ฐ„๋‹ค.

์•„๋ž˜ ์ฟผ๋ฆฌ๋Š” ์„ฑ์ ์„ ๊ธฐ์ค€์œผ๋กœ ์ •๋ ฌ์‹œํ‚จ ๊ฒƒ์ด๋‹ค.

์ •๋ ฌ ๋ชฉ๋ก์— 2๊ฐœ ์ด์ƒ์„ ์“ฐ๋ฉด, 2๋ฒˆ์งธ๋ถ€ํ„ฐ๋Š” ๊ฐ™์€ ๊ฐ’๋“ค์„ ์ •๋ ฌํ•˜๋Š” 2๋ฒˆ์งธ ์ •๋ ฌ๊ธฐ์ค€์ด ๋œ๋‹ค.
์˜ˆ๋ฅผ๋“ค์–ด ์ €๊ธฐ์„œ age๋ฅผ 2๋ฒˆ์งธ ์ •๋ ฌ๊ธฐ์ค€์œผ๋กœ ์‚ผ๋Š”๋‹ค๋ฉด

์ด๋ ‡๊ฒŒ, ๊ฒน์น˜๋˜ 3ํ•™๋…„๊ณผ 4ํ•™๋…„์„ ๋‹ค์‹œ age๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์žฌ์ •๋ ฌํ•ด์ค€๋‹ค.

์˜ค๋ฆ„์ฐจ์ˆœ๊ณผ ๋‚ด๋ฆผ์ฐจ์ˆœ์„ ์„ ํƒํ•  ์ˆ˜๋„ ์žˆ๋‹ค.
asc๋ฅผ ๋ถ™์ด๋ฉด ์˜ค๋ฆ„์ฐจ์ˆœ์ด ๋˜๋Š”๋ฐ, ์–ด์ฐจํ”ผ ๋””ํดํŠธ๊ฐ€ asc๋ผ์„œ ๊ผญ ๋ถ™์ผ ํ•„์š”๋Š” ์—†๋‹ค.

์ด์™€ ๋ฐ˜๋Œ€๋กœ desc๋ฅผ ๋ถ™์ด๋ฉด ๋‚ด๋ฆผ์ฐจ์ˆœ์ด ๋œ๋‹ค.



where ์ ˆ

์ด์ œ๊นŒ์ง€๋Š” ์ € 7๊ฐœ์˜ ๋ชจ๋“  ํŠœํ”Œ๋“ค์„ ์ ‘๊ทผํ–ˆ์ง€๋งŒ, where๊ณผ ์กฐ๊ฑด์‹์„ ์‚ฌ์šฉํ•œ๋‹ค๋ฉด ์›ํ•˜๋Š” ํŠœํ”Œ๋งŒ์„ ์ถ”์ถœํ•ด์„œ ์ž‘์—…์„ ํ•  ์ˆ˜ ์žˆ๋‹ค.

๋น„๊ต์—๋Š” =, !=, <=, >= <, > ๋“ฑ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค,

์•„๋ž˜ ์ฟผ๋ฆฌ๋Š” grade๊ฐ€ 4์ธ ํŠœํ”Œ๋งŒ ์ถœ๋ ฅํ•œ๋‹ค.

์•„๋ž˜ ์ฟผ๋ฆฌ๋Š” grade๊ฐ€ 4๊ฐ€ ์•„๋‹Œ ํŠœํ”Œ๋งŒ ์ถœ๋ ฅํ•œ๋‹ค.

์•„๋ž˜ ์ฟผ๋ฆฌ๋Š” grade๊ฐ€ 4๋ณด๋‹ค ์ž‘์€๊ฒƒ๋งŒ ์ถœ๋ ฅํ•œ๋‹ค.
๊ฒฐ๊ณผ๋Š” ์œ„์™€ ๊ฐ™๋‹ค.

์•„๋ž˜ ์ฟผ๋ฆฌ๋Š” grade๊ฐ€ 2์™€ ๊ฐ™๊ฑฐ๋‚˜ ์ž‘์€๊ฒƒ๋งŒ์„ ์ถœ๋ ฅํ•œ๋‹ค.

๋…ผ๋ฆฌ ์—ฐ์‚ฐ์ž๋กœ๋Š” not, and, or๊ฐ€ ์žˆ๋‹ค.
not์€ ์กฐ๊ฑด์‹์˜ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ˜์ „์‹œํ‚จ๋‹ค.
๋”ฐ๋ผ์„œ ์•„๋ž˜์˜ ์ฟผ๋ฆฌ๋Š” grade๊ฐ€ 2๊ฐ€ ์•„๋‹Œ ํŠœํ”Œ๋งŒ ์ฐพ๋Š”๋‹ค.

and๋Š” ๋‘ ์กฐ๊ฑด์‹์ด ๋ชจ๋‘ ์ฐธ์ด์–ด์•ผ ์ฐธ์„ ๋ฐ˜ํ™˜ํ•œ๋‹ค.
๋”ฐ๋ผ์„œ ์•„๋ž˜ ์ฟผ๋ฆฌ๋Š” grade๊ฐ€ 4์ด๋ฉด์„œ age๊ฐ€ 23์ธ ํŠœํ”Œ๋งŒ ์ฐพ๋Š”๋‹ค.

or๋Š” ๋‘ ์กฐ๊ฑด์‹ ์ค‘์— ํ•˜๋‚˜๋งŒ ์ฐธ์ด์–ด๋„ ์ฐธ์„ ๋ฐ˜ํ™˜ํ•œ๋‹ค.
๋”ฐ๋ผ์„œ ์•„๋ž˜ ์ฟผ๋ฆฌ๋Š” 4์ธ ํŠœํ”Œ๊ณผ 2์ธ ํŠœํ”Œ์„ ์ „๋ถ€ ์ฐพ๋Š”๋‹ค.

ํŠน์ • ๋ฒ”์œ„์— ์žˆ๋Š” ์†์„ฑ๊ฐ’ ํŠœํ”Œ๋งŒ์„ ๊ฐ€์ ธ์˜ค๋ ค๋ฉด ์ด๋Ÿฐ์‹์œผ๋กœ ํ•  ์ˆ˜ ์žˆ์„ ๊ฒƒ์ด๋‹ค.
์•„๋ž˜ ์ฟผ๋ฆฌ๋Š” 2<= x <=3 ๋ฒ”์œ„์˜ grade๋งŒ์„ ์ถ”์ถœํ•œ๋‹ค.

๊ทผ๋ฐ ์ €๊ฑด ์ฉ... ์ง๊ด€์ ์ธ ํ˜•ํƒœ์˜ ์ฟผ๋ฆฌ๋Š” ์•„๋‹ˆ๋‹ค.

์œ„์˜ ์ฟผ๋ฆฌ๋Š” ์•„๋ž˜์™€ ๊ฐ™์ด ๊ฐœ์„ ํ•  ์ˆ˜ ์žˆ๋‹ค.
์†์„ฑ between ์‹œ์ž‘๊ฐ’ and ์ข…๋ฃŒ๊ฐ’



where ์ ˆ ๋ฌธ์ž์—ด ๋น„๊ต ๋ฐ ๋งค์นญ

๋ฌธ์ž์—ด๋„ ๊ธฐ๋ณธ ๋น„๊ต์—ฐ์‚ฐ์ž๋ฅผ ํ†ตํ•ด ๋น„๊ต๋ฅผ ์ˆ˜ํ–‰ํ•  ์ˆœ ์žˆ๋‹ค.

<๋‚˜ > ๋“ฑ์„ ์“ฐ๋ฉด ์‚ฌ์ „์ˆœ์œผ๋กœ ๋น„๊ต๋ฅผ ์ˆ˜ํ–‰ํ•œ๋‹ค.

๋ฌธ์ œ๋Š” ์ €๋Ÿฐ์‹์œผ๋กœ๋Š” ์ œ๋Œ€๋กœ๋œ ๋งค์นญ์„ ์ˆ˜ํ–‰ํ•˜๊ธฐ ํž˜๋“ค๋‹ค๋Š” ๊ฒƒ์ด๋‹ค.
like ์—ฐ์‚ฐ์ž๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋ฌธ์ž์—ด์˜ ํŒจํ„ด์„ ๋งค์นญ์‹œํ‚ฌ ์ˆ˜ ์žˆ๋‹ค.
์†์„ฑ like ๋ฌธ์ž์—ดํŒจํ„ด

์—ฌ๊ธฐ์—๋Š” ํŠน๋ณ„ ์—ฐ์‚ฐ์ž๊ฐ€ ๋ช‡๊ฐœ ๋” ์žˆ๋Š”๋ฐ, _๋Š” ํ•˜๋‚˜์˜ ๋ชจ๋“  ๋ฌธ์ž๋ฅผ ํ‘œํ˜„ํ•˜๊ณ ,
%๋Š” 0๊ฐœ ์ด์ƒ์˜ ๋ชจ๋“  ๋ฌธ์ž์—ด์„ ํ‘œํ˜„ํ•œ๋‹ค.
๊ฐ€๋ น "%o%"๋ผ๋Š” ํŒจํ„ด์€, o๊ฐ€ ๋“ค์–ด๊ฐ€๋Š” ๋ชจ๋“  ๋ฌธ์ž์—ด์„ ์˜๋ฏธํ•˜๋Š” ๊ฒƒ์ด๋‹ค.
๊ทธ๋ž˜์„œ ๊ทธ๊ฒƒ๋Œ€๋กœ ์ฟผ๋ฆฌ๋ฅผ ๋Œ๋ฆฌ๋ฉด

์ด๋ ‡๊ฒŒ ์ค‘๊ฐ„์— o๊ฐ€ ๋“ค์–ด๊ฐ€๋Š” ๋†ˆ๋งŒ ์ž˜ ์ฐพ์•„์ค€๋‹ค.

๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ๋Œ€๋กœ ๋๋‚˜๋Š” ํ•™๊ต๋ช…๋งŒ ์ฐพ๋Š”๋‹ค.

์ฐธ๊ณ ๋กœ ์ด๋ ‡๊ฒŒ ํ•ด๋„ ๋Œ์•„๊ฐ„๋‹ค.
%๋Š” ์—†๋Š” ๊ฒƒ๋„ ๋งค์นญํ•ด์ค€๋‹ค.

์ด๋ ‡๊ฒŒ๋„ ํ•  ์ˆ˜ ์žˆ๋‹ค. ๋Œ€์‹  ๋”ฑ 2๊ธ€์ž๋งŒ ๋งค์นญ๋œ๋‹ค.

๊ทธ๋ ‡๋‹ค.

๋” ์žˆ๊ธด ํ•œ๋ฐ ๋‚˜๋ˆ ์„œ ํฌ์ŠคํŒ…ํ•˜๋„๋ก ํ•˜๊ฒ ๋‹ค.


์ฐธ์กฐ
https://extbrain.tistory.com/51