๐Ÿ˜—
SQL Guide
  • ๐Ÿ˜€SQL ์ „๋ฌธ๊ฐ€ ๊ฐ€์ด๋“œ์˜ ๊ฐ€์ด๋“œ
  • ๐Ÿ˜ฆ๊ณผ๋ชฉ1 ๋ฐ์ดํ„ฐ๋ชจ๋ธ์˜ ์ดํ•ด
    • โญ์ œ1์žฅ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ๋ง์˜ ์ดํ•ด
      • ๐ŸŒ 1-1-1. ๋ฐ์ดํ„ฐ ๋ชจ๋ธ์˜ ์ดํ•ด
      • ๐ŸŒ 1-1-2. ์—”ํ„ฐํ‹ฐ(Entity)
      • ๐ŸŒ 1-1-3. ์†์„ฑ(Attribute)
      • ๐ŸŒ 1-1-4. ๊ด€๊ณ„(Relationship)
      • ๐ŸŒ 1-1-5. ์‹๋ณ„์ž
    • โญ์ œ2์žฅ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ๊ณผ SQL
      • ๐ŸŒ 1-2-1. ์ •๊ทœํ™”
      • ๐ŸŒ 1-2-2. ๊ด€๊ณ„์™€ ์กฐ์ธ์˜ ์ดํ•ด
      • ๐ŸŒ 1-2-3. ๋ชจ๋ธ์ด ํ‘œํ˜„ํ•˜๋Š” ํŠธ๋žœ์žญ์…˜์˜ ์ดํ•ด
      • ๐ŸŒ 1-2-4. Null ์†์„ฑ์˜ ์ดํ•ด
      • ๐ŸŒ 1-2-5. ๋ณธ์งˆ์‹๋ณ„์ž vs. ์ธ์กฐ์‹๋ณ„์ž
  • ๐Ÿ˜ง๊ณผ๋ชฉ2. SQL ๊ธฐ๋ณธ๊ณผ ํ™œ์šฉ
    • โญ์ œ1์žฅ SQL ๊ธฐ๋ณธ
      • ๐ŸŒ 2-1-1. ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ฐœ์š”
      • ๐ŸŒ 2-1-2. SELECT๋ฌธ
      • ๐ŸŒ 2-1-3. ํ•จ์ˆ˜(FUNCTION)
      • ๐ŸŒ 2-1-4. WHERE ์ ˆ
      • ๐ŸŒ 2-1-5. GROUP BY, HAVING ์ ˆ
      • ๐ŸŒ 2-1-6. ORDER BY ์ ˆ
      • ๐ŸŒ 2-1-7. ์กฐ์ธ
      • ๐ŸŒ 2-1-8. ํ‘œ์ค€ ์กฐ์ธ
    • โญ์ œ2์žฅ SQL ํ™œ์šฉ
      • ๐ŸŒ 2-2-1. ์„œ๋ธŒ ์ฟผ๋ฆฌ
      • ๐ŸŒ 2-2-2. ์ง‘ํ•ฉ ์—ฐ์‚ฐ์ž
      • ๐ŸŒ 2-2-3. ๊ทธ๋ฃน ํ•จ์ˆ˜
      • ๐ŸŒ 2-2-4. ์œˆ๋„์šฐ ํ•จ์ˆ˜
      • ๐ŸŒ 2-2-5. Top N ์ฟผ๋ฆฌ
      • ๐ŸŒ 2-2-6. ๊ณ„์ธตํ˜• ์งˆ์˜์™€ ์…€ํ”„ ์กฐ์ธ
      • ๐ŸŒ 2-2-7. PIVOT ์ ˆ๊ณผ UNPIVOT ์ ˆ
      • ๐ŸŒ 2-2-8. ์ •๊ทœ ํ‘œํ˜„์‹
    • โญ์ œ3์žฅ ๊ด€๋ฆฌ ๊ตฌ๋ฌธ
      • ๐ŸŒ 2-3-1. DML
      • ๐ŸŒ 2-3-2. TCL
      • ๐ŸŒ 2-3-3. DDL
      • ๐ŸŒ 2-3-4. DCL
  • ๐Ÿ˜จ๊ณผ๋ชฉ3. SQL ๊ณ ๊ธ‰ ํ™œ์šฉ ๋ฐ ํŠœ๋‹
    • โญ์ œ1์žฅ SQL ์ˆ˜ํ–‰ ๊ตฌ์กฐ
      • ๐ŸŒ 3-1-1. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์•„ํ‚คํ…์ฒ˜
      • ๐ŸŒ 3-1-2. SQL ์ฒ˜๋ฆฌ ๊ณผ์ •
      • ๐ŸŒ 3-1-3. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค I/O ๋ฉ”์ปค๋‹ˆ์ฆ˜
    • โญ์ œ2์žฅ SQL ๋ถ„์„ ๋„๊ตฌ
      • ๐ŸŒ 3-2-1. ์˜ˆ์ƒ ์‹คํ–‰๊ณ„ํš
      • ๐ŸŒ 3-2-2. SQL ํŠธ๋ ˆ์ด์Šค
      • ๐ŸŒ 3-2-3. ์‘๋‹ต ์‹œ๊ฐ„ ๋ถ„์„
    • โญ์ œ3์žฅ ์ธ๋ฑ์Šค ํŠœ๋‹
      • ๐ŸŒ 3-3-1. ์ธ๋ฑ์Šค ๊ธฐ๋ณธ ์›๋ฆฌ
      • ๐ŸŒ 3-3-2. ํ…Œ์ด๋ธ” ์•ก์„ธ์Šค ์ตœ์†Œํ™”
      • ๐ŸŒ 3-3-3. ์ธ๋ฑ์Šค ์Šค์บ” ํšจ์œจํ™”
      • ๐ŸŒ 3-3-4. ์ธ๋ฑ์Šค ์„ค๊ณ„
    • โญ์ œ4์žฅ ์กฐ์ธ ํŠœ๋‹
      • ๐ŸŒ 3-4-1. NL ์กฐ์ธ
      • ๐ŸŒ 3-4-2. ์†ŒํŠธ ๋จธ์ง€ ์กฐ์ธ
      • ๐ŸŒ 3-4-3. ํ•ด์‹œ ์กฐ์ธ
      • ๐ŸŒ 3-4-4. ์Šค์นผ๋ผ ์„œ๋ธŒ์ฟผ๋ฆฌ
      • ๐ŸŒ 3-4-5. ๊ณ ๊ธ‰ ์กฐ์ธ ๊ธฐ๋ฒ•
    • โญ์ œ5์žฅ SQL ์˜ตํ‹ฐ๋งˆ์ด์ €
      • ๐ŸŒ 3-5-1. SQL ์˜ตํ‹ฐ๋งˆ์ด์ง• ์›๋ฆฌ
      • ๐ŸŒ 3-5-2. SQL ๊ณต์œ  ๋ฐ ์žฌ์‚ฌ์šฉ
      • ๐ŸŒ 3-5-3. ์ฟผ๋ฆฌ ๋ณ€ํ™˜
    • โญ์ œ6์žฅ ๊ณ ๊ธ‰ SQL ํŠœ๋‹
      • ๐ŸŒ 3-6-1. ์†ŒํŠธ ํŠœ๋‹
      • ๐ŸŒ 3-6-2. DML ํŠœ๋‹
      • ๐ŸŒ 3-6-3. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค Call ์ตœ์†Œํ™”
      • ๐ŸŒ 3-6-4. ํŒŒํ‹ฐ์…”๋‹
      • ๐ŸŒ 3-6-5. ๋Œ€์šฉ๋Ÿ‰ ๋ฐฐ์น˜ ํ”„๋กœ๊ทธ๋žจ ํŠœ๋‹
      • ๐ŸŒ 3-6-6. ๊ณ ๊ธ‰ SQL ํ™œ์šฉ
    • โญ์ œ7์žฅ Lock๊ณผ ํŠธ๋žœ์žญ์…˜ ๋™์‹œ์„ฑ ์ œ์–ด
      • ๐ŸŒ 3-7-1. Lock
      • ๐ŸŒ 3-7-2. ํŠธ๋žœ์žญ์…˜
      • ๐ŸŒ 3-7-3. ๋™์‹œ์„ฑ ์ œ์–ด
Powered by GitBook
On this page
  • ๊ณผ๋ชฉ2. SQL ๊ธฐ๋ณธ๊ณผ ํ™œ์šฉ
  • ์ œ1์žฅ SQL ๊ธฐ๋ณธ
  • ์ œ2์ ˆ SELECT๋ฌธ
  • 1. SELECT

Was this helpful?

  1. ๊ณผ๋ชฉ2. SQL ๊ธฐ๋ณธ๊ณผ ํ™œ์šฉ
  2. ์ œ1์žฅ SQL ๊ธฐ๋ณธ

2-1-2. SELECT๋ฌธ

๊ณผ๋ชฉ2. SQL ๊ธฐ๋ณธ๊ณผ ํ™œ์šฉ

์ œ1์žฅ SQL ๊ธฐ๋ณธ

์ œ2์ ˆ SELECT๋ฌธ

1. SELECT

์‚ฌ์šฉ์ž๊ฐ€ ์ž…๋ ฅํ•œ ๋ฐ์ดํ„ฐ๋Š” ์–ธ์ œ๋ผ๋„ ์กฐํšŒ๊ฐ€ ๊ฐ€๋Šฅํ•˜๋‹ค. ์•ž์—์„œ ์ž…๋ ฅํ•œ ์ž๋ฃŒ๋“ค์„ ์กฐํšŒํ•ด๋ณด๋Š” SQL ๋ฌธ์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค. (๋ณ„๋„ ์ œ๊ณตํ•œ SQL SCRIPT ๋ฅผ ํ†ตํ•ด ๋ชจ๋“  ํ…Œ์ด๋ธ”์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ƒˆ๋กญ๊ฒŒ ์ƒ์„ฑํ•œ ํ›„, ์ดํ›„ ๋ณธ ๊ฐ€์ด๋“œ ๋‚ด์šฉ์„ ์ง„ํ–‰ํ•˜๊ธฐ ๋ฐ”๋ž€๋‹ค.)

SELECT [ALL/DISTINCT] ๋ณด๊ณ  ์‹ถ์€ ์นผ๋Ÿผ๋ช…, ๋ณด๊ณ  ์‹ถ์€ ์นผ๋Ÿผ๋ช…, โ€ฆ 
 FROM ํ•ด๋‹น ์นผ๋Ÿผ๋“ค์ด ์žˆ๋Š” ํ…Œ์ด๋ธ”๋ช…;
  
- ALL : Default ์˜ต์…˜์ด๋ฏ€๋กœ ๋ณ„๋„๋กœ ํ‘œ์‹œํ•˜์ง€ ์•Š์•„๋„ ๋œ๋‹ค. ์ค‘๋ณต๋œ ๋ฐ์ดํ„ฐ๊ฐ€ ์žˆ์–ด๋„ ๋ชจ๋‘ ์ถœ๋ ฅํ•œ๋‹ค.
- DISTINCT : ์ค‘๋ณต๋œ ๋ฐ์ดํ„ฐ๊ฐ€ ์žˆ๋Š” ๊ฒฝ์šฐ 1 ๊ฑด์œผ๋กœ ์ฒ˜๋ฆฌํ•ด์„œ ์ถœ๋ ฅํ•œ๋‹ค.

[์˜ˆ์ œ] ์กฐํšŒํ•˜๊ธฐ๋ฅผ ์›ํ•˜๋Š” ์นผ๋Ÿผ๋ช…์„ SELECT ๋‹ค์Œ์— ์ฝค๋งˆ ๊ตฌ๋ถ„์ž(,)๋กœ ๊ตฌ๋ถ„ํ•˜์—ฌ ๋‚˜์—ดํ•˜๊ณ , FROM ๋‹ค์Œ์— ํ•ด๋‹น ์นผ๋Ÿผ์ด ์กด์žฌํ•˜๋Š” ํ…Œ์ด๋ธ”๋ช…์„ ์ž…๋ ฅํ•˜์—ฌ ์‹คํ–‰์‹œํ‚จ๋‹ค. ์ž…๋ ฅํ•œ ์„ ์ˆ˜๋“ค์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒํ•œ๋‹ค.

###### [์˜ˆ์ œ]

>```sql
>SELECT PLAYER_ID, PLAYER_NAME, TEAM_ID
>     , POSITION, HEIGHT, WEIGHT, BACK_NO
>  FROM PLAYER;
>```
  
###### [์‹คํ–‰ ๊ฒฐ๊ณผ]

>|PLAYER_ID|PLAYER_NAME|TEAM_ID|POSITION|BACK_NO|HEIGHT|WEIGHT|
>|--------|----------|------|------|-------:|-----:|------:|
>|2007155|์ •๊ฒฝ๋Ÿ‰|K05|MF|19|173|65|
>|2010025|์ •์€์ต|K05|MF|35|176|63|
>|2012001|๋ ˆ์˜ค๋งˆ๋ฅด|K05|MF|5|183|77|
>|2008269|๋ช…์žฌ์šฉ|K05|MF|7|173|63|
>|2007149|๋ณ€์žฌ์„ญ|K05|MF|11|170|63|
>|2012002|๋ณด๋ |K05|MF|10|174|68|
>|2011123|๋น„์—๋ผ|K05|MF|21|176|73|
>|2008460|์„œ๋™์›|K05|MF|22|184|78|
>|2010019|์•ˆ๋Œ€ํ˜„|K05|MF|25|179|72|
>|2010018|์–‘ํ˜„์ •|K05|MF|14|176|72|
>|2010022|์œ ์›์„ญ|K05|MF|37|180|77|
>|2012008|๊น€์ˆ˜์ฒ |K05|MF|34|171|68|
>|2012013|์ž„๋‹คํ•œ|K05|DF|39|181|67|
>|๏ผš|๏ผš|๏ผš|๏ผš|๏ผš|๏ผš|๏ผš|
>
>###### 480 ๊ฐœ์˜ ํ–‰์ด ์„ ํƒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

* DISTINCT ์˜ต์…˜

###### [์˜ˆ์ œ ๋ฐ ์‹คํ–‰ ๊ฒฐ๊ณผ]

>```sql
>SELECT ALL POSITION FROM PLAYER;
>```

ALL ์€ ์ƒ๋žต ๊ฐ€๋Šฅํ•œ ํ‚ค์›Œ๋“œ์ด๋ฏ€๋กœ ์•„๋ž˜ SQL๋ฌธ์žฅ๋„ ๊ฐ™์€ ๊ฒฐ๊ณผ๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค.

>```sql
>SELECT POSITION FROM PLAYER;
>```
>
>###### 480 ๊ฐœ์˜ ํ–‰์ด ์„ ํƒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

###### [์˜ˆ์ œ] 

>```sql
>SELECT DISTINCT POSITION FROM PLAYER;
>```

###### [์‹คํ–‰ ๊ฒฐ๊ณผ] Oracle

>|POSITION|
>|:------:|
>|GK |
>|DF |
>|FW |
>|MF |
>
>###### 5 ๊ฐœ์˜ ํ–‰์ด ์„ ํƒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

์‹คํ–‰ ๊ฒฐ๊ณผ๋ฅผ ๋ณด๋ฉด 480 ๊ฐœ์˜ ํ–‰์ด ๋ชจ๋‘ ์ถœ๋ ฅ๋œ ๊ฒƒ์ด ์•„๋‹ˆ๋ผ ํฌ์ง€์…˜์˜ ์ข…๋ฅ˜์ธ 4 ๊ฐœ์˜ ํ–‰๊ณผ ํฌ์ง€์…˜ ๋ฐ์ดํ„ฐ๊ฐ€ ์•„์ง ๋ฏธ์ •์ธ NULL ๊นŒ์ง€ 5 ๊ฑด์˜ ๋ฐ์ดํ„ฐ๋งŒ ์ถœ๋ ฅ์ด ๋˜์—ˆ๋‹ค.

* WILDCARD ์‚ฌ์šฉํ•˜๊ธฐ

์ž…๋ ฅํ•œ ์ •๋ณด๋“ค์„ ๋ณด๊ธฐ์œ„ํ•ด PLAYER ํ…Œ์ด๋ธ”์—์„œ ๋ณด๊ณ  ์‹ถ์€ ์ •๋ณด๋“ค์ด ์žˆ๋Š” ์นผ๋Ÿผ๋“ค์„ ์„ ํƒํ•˜์—ฌ ์กฐํšŒํ•ด๋ณด๋Š” ๊ฒƒ์ด๋‹ค. ํ•ด๋‹น ํ…Œ์ด๋ธ”์˜ ๋ชจ๋“  ์นผ๋Ÿผ ์ •๋ณด๋ฅผ ๋ณด๊ณ  ์‹ถ์„ ๊ฒฝ์šฐ์—๋Š” ์™€์ผ๋“œ์นด๋“œ๋กœ ์• ์Šคํ„ฐ๋ฆฌ์Šคํฌ(*)๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์กฐํšŒํ•  ์ˆ˜ ์žˆ๋‹ค.

>```sql
>SELECT * FROM ํ…Œ์ด๋ธ”๋ช…;
>```

[์˜ˆ์ œ] ์ž…๋ ฅํ•œ ์„ ์ˆ˜๋“ค์˜ ์ •๋ณด๋ฅผ ๋ชจ๋‘ ์กฐํšŒํ•œ๋‹ค.

###### [์˜ˆ์ œ] 

>```sql
>SELECT * FROM PLAYER;
>```

###### [์‹คํ–‰ ๊ฒฐ๊ณผ]

>|PLAYER_ID|PLAYER_NAME|TEAM_ID|E_PLAYER_NAME|NICKNAME|JOIN_YYYY|POSITION|BACK_NO|NATION|BIRTH_DATE|SOLAR|HEIGHT|WEIGHT|
>|---------|------|---|-----------------|-------|---:|---|---------:|---|-------|----:|-----:|-----:|
>|2007155|์ •๊ฒฝ๋Ÿ‰  |K05|JEONG, KYUNGRYANG|       |2006| MF| 19||1983-12-22|1|173|65|
>|2010025|์ •์€์ต  |K05|                 |       |    | MF| 35||1991-03-09|1|176|63|
>|2012001|๋ ˆ์˜ค๋งˆ๋ฅด|K05|Leomar Leiria    |๋ ˆ์˜ค   |2012| MF|  5||1981-06-26|1|183|77|
>|2008269|๋ช…์žฌ์šฉ  |K05|MYUNG, JAEYOENG  |       |2007| MF|  7||1983-02-26|2|173|63|
>|2007149|๋ณ€์žฌ์„ญ  |K05|BYUN, JAESUB     |์ž‘์€ํƒฑํฌ|2007| MF| 11||1985-09-17|2|170|63|
>|2012002|๋ณด๋     |K05|Raphael JoseBotti Zacarias Sena Botti| |2012|MF|10||1991-02-23|1|174|68|
>|2011123|๋น„์—๋ผ  |K05|Vieira           |       |2011| MF| 21||1984-02-25|1|176|73|
>|2008460|์„œ๋™์›  |K05|SEO, DONGWON     |       |2008| MF| 22||1985-08-14|1|184|78|
>|2010019|์•ˆ๋Œ€ํ˜„  |K05|AN, DAEHYUN      |       |2010| MF| 25||1987-08-20|1|179|72|
>|2010018|์–‘ํ˜„์ •  |K05|YANG, HYUNJUNG   |       |2010| MF| 14||1987-07-25|1|176|72|
>|2010022|์œ ์›์„ญ  |K05|YOU, WONSUOB     |์•™๋งˆ   |2010| MF| 37||1991-05-24|1|180|77|
>|2012008|๊น€์ˆ˜์ฒ   |K05|KIM, SUCHEUL     |       |2012| MF| 34||1989-05-26|1|171|68|
>|2012013|์ž„๋‹คํ•œ  |K05|LIM, DAHAN       |๋‹ฌ๋งˆ   |2012| DF| 39||1989-07-21|1|181|67|
>|๏ผš|๏ผš|๏ผš|๏ผš|๏ผš|๏ผš|๏ผš|๏ผš|๏ผš|๏ผš|๏ผš|๏ผš|๏ผš|
>
>480 ๊ฐœ์˜ ํ–‰์ด ์„ ํƒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

์‹คํ–‰ ๊ฒฐ๊ณผ ํ™”๋ฉด์„ ๋ณด๋ฉด ์นผ๋Ÿผ ๋ ˆ์ด๋ธ”(LABLE)์ด ๋งจ ์œ„์— ๋ณด์ด๊ณ , ๋ ˆ์ด๋ธ” ๋ฐ‘์— ์ ์„ ์ด ๋ณด์ธ๋‹ค. ์‹ค์งˆ์ ์ธ ์ž๋ฃŒ๋Š” ๋‹ค์Œ ์ค„๋ถ€ํ„ฐ ์‹œ์ž‘๋œ๋‹ค. ๋ ˆ์ด๋ธ”์€ ๊ธฐ๋ณธ์ ์œผ๋กœ ๋Œ€๋ฌธ์ž๋กœ ๋ณด์ด๊ณ , ์ฒซ ๋ผ์ธ์— ๋ณด์ด๋Š” ๋ ˆ์ด๋ธ”์˜ ์ •๋ ฌ์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

- ์ขŒ์ธก ์ •๋ ฌ : ๋ฌธ์ž ๋ฐ ๋‚ ์งœ ๋ฐ์ดํ„ฐ 
- ์šฐ์ธก ์ •๋ ฌ : ์ˆซ์ž ๋ฐ์ดํ„ฐ

๋ณธ ๊ฐ€์ด๋“œ์—์„œ๋Š” ๊ฐ€๋…์„ฑ์„ ์œ„ํ•ด ์ผ๋ถ€ ์นผ๋Ÿผ์˜ ์ขŒ์ •๋ ฌ, ์šฐ์ •๋ ฌ์„ ๋ฌด์‹œํ•œ ๊ฒฝ์šฐ๊ฐ€ ์žˆ์œผ๋‹ˆ ์ฐธ๊ณ ํ•˜๊ธฐ ๋ฐ”๋ž€๋‹ค.

* ALIAS ๋ถ€์—ฌํ•˜๊ธฐ

์กฐํšŒ๋œ ๊ฒฐ๊ณผ์— ์ผ์ข…์˜ ๋ณ„๋ช…(ALIAS, ALIASES)์„ ๋ถ€์—ฌํ•ด์„œ ์นผ๋Ÿผ ๋ ˆ์ด๋ธ”์„ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ๋‹ค. ์นผ๋Ÿผ ๋ณ„๋ช…(ALIAS)์— ๋Œ€ํ•œ ์‚ฌํ•ญ์„ ์ •๋ฆฌํ•˜๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

- ์นผ๋Ÿผ๋ช… ๋ฐ”๋กœ ๋’ค์— ์˜จ๋‹ค.
- ์นผ๋Ÿผ๋ช…๊ณผ ALIAS ์‚ฌ์ด์— AS, as ํ‚ค์›Œ๋“œ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜๋„ ์žˆ๋‹ค. (option)
- ์ด์ค‘ ์ธ์šฉ๋ถ€ํ˜ธ(Double quotation)๋Š” ALIAS ๊ฐ€ ๊ณต๋ฐฑ, ํŠน์ˆ˜๋ฌธ์ž๋ฅผ ํฌํ•จํ•  ๊ฒฝ์šฐ์™€ ๋Œ€์†Œ๋ฌธ์ž ๊ตฌ๋ถ„

์ด ํ•„์š”ํ•  ๊ฒฝ์šฐ ์‚ฌ์šฉ๋œ๋‹ค.

[์˜ˆ์ œ] ์ž…๋ ฅํ•œ ์„ ์ˆ˜๋“ค์˜ ์ •๋ณด๋ฅผ ์นผ๋Ÿผ ๋ณ„๋ช…์„ ์ด์šฉํ•˜์—ฌ ์ถœ๋ ฅํ•œ๋‹ค.

###### [์˜ˆ์ œ] 

>```sql
>SELECT PLAYER_NAME AS ์„ ์ˆ˜๋ช…, POSITION AS ์œ„์น˜, HEIGHT AS ํ‚ค, WEIGHT AS ๋ชธ๋ฌด๊ฒŒ FROM PLAYER;
>```

์นผ๋Ÿผ ๋ณ„๋ช…์—์„œ AS ๋ฅผ ๊ผญ ์‚ฌ์šฉํ•˜์ง€ ์•Š์•„๋„ ๋˜๋ฏ€๋กœ, ์•„๋ž˜ SQL ์€ ์œ„ SQL ๊ณผ ๊ฐ™์€ ๊ฒฐ๊ณผ๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค. 

>```sql
>SELECT PLAYER_NAME ์„ ์ˆ˜๋ช…, POSITION ์œ„์น˜, HEIGHT ํ‚ค, WEIGHT ๋ชธ๋ฌด๊ฒŒ FROM PLAYER;
>```

###### [์‹คํ–‰ ๊ฒฐ๊ณผ] 
>|์„ ์ˆ˜๋ช…|์œ„์น˜|ํ‚ค|๋ชธ๋ฌด๊ฒŒ|
>|-----|---|---:|----:|
>|์ •๊ฒฝ๋Ÿ‰|MF|173|65|
>|์ •์€์ต|MF|176|63|
>|๋ ˆ์˜ค๋งˆ๋ฅด|MF|183|77|
>|๋ช…์žฌ์šฉ|MF|173|63|
>|๋ณ€์žฌ์„ญ|MF|170|63|
>|๋ณด๋ |MF|174|68|
>|๋น„์—๋ผ|MF|176|73|
>|์„œ๋™์›|MF|184|78|
>|์•ˆ๋Œ€ํ˜„|MF|179|72|
>|์–‘ํ˜„์ •|MF|176|72|
>|์œ ์›์„ญ|MF|180|77|
>|๊น€์ˆ˜์ฒ |MF|171|68|
>|์ž„๋‹คํ•œ|DF|181|67|
>|๏ผš|๏ผš|๏ผš|๏ผš|
>
>480 ๊ฐœ์˜ ํ–‰์ด ์„ ํƒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

[์˜ˆ์ œ] ์นผ๋Ÿผ ๋ณ„๋ช…์„ ์ ์šฉํ•  ๋•Œ ๋ณ„๋ช… ์ค‘๊ฐ„์— ๊ณต๋ฐฑ์ด ๋“ค์–ด๊ฐ€๋Š” ๊ฒฝ์šฐ ใ€Ž" "ใ€๋ฅผ ์‚ฌ์šฉํ•ด์•ผ ํ•œ๋‹ค. SQL Server ์˜ ๊ฒฝ์šฐใ€Ž" "ใ€, ใ€Ž' ใ€', ใ€Ž[ ]ใ€์™€ ๊ฐ™์ด 3 ๊ฐ€์ง€์˜ ๋ฐฉ์‹์œผ๋กœ ๋ณ„๋ช…์„ ๋ถ€์—ฌํ•  ์ˆ˜ ์žˆ๋‹ค.

###### [์˜ˆ์ œ] 

>```sql
>SELECT PLAYER_NAME "์„ ์ˆ˜ ์ด๋ฆ„", POSITION "๊ทธ๋ผ์šด๋“œ ํฌ์ง€์…˜", HEIGHT "ํ‚ค", WEIGHT "๋ชธ๋ฌด๊ฒŒ" FROM PLAYER;
>```

###### [์‹คํ–‰ ๊ฒฐ๊ณผ]

>|์„ ์ˆ˜ ์ด๋ฆ„|๊ทธ๋ผ์šด๋“œ ํฌ์ง€์…˜|ํ‚ค|๋ชธ๋ฌด๊ฒŒ|
>|------|-----------|--:|----:|
>|์ •๊ฒฝ๋Ÿ‰|MF|173|65|
>|์ •์€์ต|MF|176|63|
>|๋ ˆ์˜ค๋งˆ๋ฅด|MF|183|77|
>|๋ช…์žฌ์šฉ|MF|173|63|
>|๋ณ€์žฌ์„ญ|MF|170|63|
>|๋ณด๋ |MF|174|68|
>|๋น„์—๋ผ|MF|176|73|
>|์„œ๋™์›|MF|184|78|
>|์•ˆ๋Œ€ํ˜„|MF|179|72|
>|์–‘ํ˜„์ •|MF|176|72|
>|์œ ์›์„ญ|MF|180|77|
>|๊น€์ˆ˜์ฒ |MF|171|68|
>|์ž„๋‹คํ•œ|DF|181|67|
>|๏ผš|๏ผš|๏ผš|๏ผš|
>
>###### 480 ๊ฐœ์˜ ํ–‰์ด ์„ ํƒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.


## 2. ์‚ฐ์ˆ  ์—ฐ์‚ฐ์ž์™€ ํ•ฉ์„ฑ ์—ฐ์‚ฐ์ž

* ์‚ฐ์ˆ  ์—ฐ์‚ฐ์ž

์‚ฐ์ˆ  ์—ฐ์‚ฐ์ž๋Š” NUMBER ์™€ DATE ์ž๋ฃŒํ˜•์— ๋Œ€ํ•ด ์ ์šฉ๋˜๋ฉฐ ์ผ๋ฐ˜์ ์œผ๋กœ ์ˆ˜ํ•™์—์„œ์˜ 4 ์น™ ์—ฐ์‚ฐ๊ณผ ๋™์ผํ•˜๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์šฐ์„ ์ˆœ์œ„๋ฅผ ์œ„ํ•œ ๊ด„ํ˜ธ ์ ์šฉ์ด ๊ฐ€๋Šฅํ•˜๋‹ค. ์ผ๋ฐ˜์ ์œผ๋กœ ์‚ฐ์ˆ  ์—ฐ์‚ฐ์„ ์‚ฌ์šฉํ•˜๊ฑฐ๋‚˜ ํŠน์ • ํ•จ์ˆ˜๋ฅผ ์ ์šฉํ•˜๊ฒŒ ๋˜๋ฉด ์นผ๋Ÿผ์˜ LABEL ์ด ๊ธธ์–ด์ง€๊ฒŒ ๋˜๊ณ , ๊ธฐ์กด์˜ ์นผ๋Ÿผ์— ๋Œ€ํ•ด ์ƒˆ๋กœ์šด ์˜๋ฏธ๋ฅผ ๋ถ€์—ฌํ•œ ๊ฒƒ์ด๋ฏ€๋กœ ์ ์ ˆํ•œ ALIAS ๋ฅผ ์ƒˆ๋กญ๊ฒŒ ๋ถ€์—ฌํ•˜๋Š” ๊ฒƒ์ด ์ข‹๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์‚ฐ์ˆ  ์—ฐ์‚ฐ์ž๋Š” ์ˆ˜ํ•™์—์„œ์™€ ๊ฐ™์ด (), *, /, +, - ์˜ ์šฐ์„ ์ˆœ์œ„๋ฅผ ๊ฐ€์ง„๋‹ค.

![](../images_files/SQL_169.jpg)

[์˜ˆ์ œ] ์„ ์ˆ˜๋“ค์˜ ํ‚ค์—์„œ ๋ชธ๋ฌด๊ฒŒ๋ฅผ ๋บ€ ๊ฐ’์„ ์•Œ์•„๋ณธ๋‹ค.

###### [์˜ˆ์ œ]

>```sql
>SELECT PLAYER_NAME ์ด๋ฆ„, HEIGHT - WEIGHT "ํ‚ค-๋ชธ๋ฌด๊ฒŒ" FROM PLAYER;
>```

###### [์‹คํ–‰ ๊ฒฐ๊ณผ] 

>|์ด๋ฆ„|ํ‚ค-๋ชธ๋ฌด๊ฒŒ|
>|---|------:|
>|์ •๊ฒฝ๋Ÿ‰|108.00|
>|์ •์€์ต|113.00|
>|๋ ˆ์˜ค๋งˆ๋ฅด|106.00|
>|๋ช…์žฌ์šฉ|110.00|
>|๋ณ€์žฌ์„ญ|107.00|
>|๋ณด๋ |106.00|
>|๋น„์—๋ผ|103.00|
>|์„œ๋™์›|106.00|
>|์•ˆ๋Œ€ํ˜„|107.00|
>|์–‘ํ˜„์ •|104.00|
>|์œ ์›์„ญ|103.00|
>|๊น€์ˆ˜์ฒ |103.00|
>|์ž„๋‹คํ•œ|114.00|
>|:|:|
>
>###### 480 ๊ฐœ์˜ ํ–‰์ด ์„ ํƒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

[์˜ˆ์ œ] ์„ ์ˆ˜๋“ค์˜ ํ‚ค์™€ ๋ชธ๋ฌด๊ฒŒ๋ฅผ ์ด์šฉํ•ด์„œ BMI(Body Mass Index) ๋น„๋งŒ์ง€์ˆ˜๋ฅผ ์ธก์ •ํ•œ๋‹ค.

โ€ป ์˜ˆ์ œ์—์„œ ์‚ฌ์šฉ๋œ ROUND() ํ•จ์ˆ˜๋Š” ๋ฐ˜์˜ฌ๋ฆผ์„ ์œ„ํ•œ ๋‚ด์žฅ ํ•จ์ˆ˜๋กœ์จ 6 ์ ˆ์—์„œ ํ•™์Šตํ•œ๋‹ค

###### [์˜ˆ์ œ]

>```sql
>SELECT PLAYER_NAME ์ด๋ฆ„
>     , ROUND(WEIGHT/((HEIGHT/100)*(HEIGHT/100)),2) "BMI ๋น„๋งŒ์ง€์ˆ˜"
>  FROM PLAYER;
>```

###### [์‹คํ–‰ ๊ฒฐ๊ณผ]

>|์ด๋ฆ„|BMI ๋น„๋งŒ์ง€์ˆ˜|
>|----|-------:|
>|์ •๊ฒฝ๋Ÿ‰|21.72|
>|์ •์€์ต|20.34|
>|๋ ˆ์˜ค๋งˆ๋ฅด|22.99|
>|๋ช…์žฌ์šฉ|21.05|
>|๋ณ€์žฌ์„ญ|21.80|
>|๋ณด๋ |22.46|
>|๋น„์—๋ผ|23.57|
>|์„œ๋™์›|23.04|
>|์•ˆ๋Œ€ํ˜„|22.47|
>|์–‘ํ˜„์ •|23.24|
>|์œ ์›์„ญ|23.77|
>|๊น€์ˆ˜์ฒ |23.26|
>|์ž„๋‹คํ•œ|20.45|
>|:|:|
>
>###### 480 ๊ฐœ์˜ ํ–‰์ด ์„ ํƒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

* ํ•ฉ์„ฑ(CONCATENATION) ์—ฐ์‚ฐ์ž

๋ฌธ์ž์™€ ๋ฌธ์ž๋ฅผ ์—ฐ๊ฒฐํ•˜๋Š” ํ•ฉ์„ฑ(CONCATENATION) ์—ฐ์‚ฐ์ž๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋ณ„๋„์˜ ํ”„๋กœ๊ทธ๋žจ ๋„์›€ ์—†์ด๋„ SQL ๋ฌธ์žฅ๋งŒ์œผ๋กœ๋„ ์œ ์šฉํ•œ ๋ฆฌํฌํŠธ๋ฅผ ์ถœ๋ ฅํ•  ์ˆ˜ ์žˆ๋‹ค. ํ•ฉ์„ฑ(CONCATENATION) ์—ฐ์‚ฐ์ž์˜ ํŠน์ง•์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

- ๋ฌธ์ž์™€ ๋ฌธ์ž๋ฅผ ์—ฐ๊ฒฐํ•˜๋Š” ๊ฒฝ์šฐ 2 ๊ฐœ์˜ ์ˆ˜์ง ๋ฐ”(||)์— ์˜ํ•ด ์ด๋ฃจ์–ด์ง„๋‹ค. (Oracle)
- ๋ฌธ์ž์™€ ๋ฌธ์ž๋ฅผ ์—ฐ๊ฒฐํ•˜๋Š” ๊ฒฝ์šฐ + ํ‘œ์‹œ์— ์˜ํ•ด ์ด๋ฃจ์–ด์ง„๋‹ค. (SQL Server)
- ๋‘ ๋ฒค๋” ๋ชจ๋‘ ๊ณตํ†ต์ ์œผ๋กœ CONCAT(string1, string2) ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.
- ์นผ๋Ÿผ๊ณผ ๋ฌธ์ž ๋˜๋Š” ๋‹ค๋ฅธ ์นผ๋Ÿผ๊ณผ ์—ฐ๊ฒฐ์‹œํ‚จ๋‹ค.
- ๋ฌธ์ž ํ‘œํ˜„์‹์˜ ๊ฒฐ๊ณผ์— ์˜ํ•ด ์ƒˆ๋กœ์šด ์นผ๋Ÿผ์„ ์ƒ์„ฑํ•œ๋‹ค.

[์˜ˆ์ œ] ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์„ ์ˆ˜๋“ค์˜ ์ถœ๋ ฅ ํ˜•ํƒœ๋ฅผ ๋งŒ๋“ค์–ด ๋ณธ๋‹ค.

์ถœ๋ ฅ ํ˜•ํƒœ) ์„ ์ˆ˜๋ช… ์„ ์ˆ˜, ํ‚ค cm, ๋ชธ๋ฌด๊ฒŒ kg
์˜ˆ) ๋ฐ•์ง€์„ฑ ์„ ์ˆ˜, 176 cm, 70 kg

###### [์˜ˆ์ œ] Oracle

>```sql
>SELECT PLAYER_NAME || '์„ ์ˆ˜,' || HEIGHT || 'cm,' || WEIGHT || 'kg' ์ฒด๊ฒฉ์ •๋ณด
>  FROM PLAYER;
>```

###### [์˜ˆ์ œ] SQL Server 

>```sql
>SELECT PLAYER_NAME +'์„ ์ˆ˜, '+ HEIGHT +'cm, '+ WEIGHT +'kg' ์ฒด๊ฒฉ์ •๋ณด
>  FROM PLAYER;
>```

###### [์‹คํ–‰ ๊ฒฐ๊ณผ]

>|์ฒด๊ฒฉ์ •๋ณด|
>|:----:|
>|์ •๊ฒฝ๋Ÿ‰์„ ์ˆ˜,173cm,65kg|
>|์ •์€์ต์„ ์ˆ˜,176cm,63kg|
>|๋ ˆ์˜ค๋งˆ๋ฅด์„ ์ˆ˜,183cm,77kg|
>|๋ช…์žฌ์šฉ์„ ์ˆ˜,173cm,63kg|
>|๋ณ€์žฌ์„ญ์„ ์ˆ˜,170cm,63kg|
>|๋ณด๋ ์„ ์ˆ˜,174cm,68kg|
>|๋น„์—๋ผ์„ ์ˆ˜,176cm,73kg|
>|์„œ๋™์›์„ ์ˆ˜,184cm,78kg|
>|์•ˆ๋Œ€ํ˜„์„ ์ˆ˜,179cm,72kg|
>|์–‘ํ˜„์ •์„ ์ˆ˜,176cm,72kg|
>|์œ ์›์„ญ์„ ์ˆ˜,180cm,77kg|
>|๊น€์ˆ˜์ฒ ์„ ์ˆ˜,171cm,68kg|
>|์ž„๋‹คํ•œ์„ ์ˆ˜,181cm,67kg|
>|:|
>
>###### 480 ๊ฐœ์˜ ํ–‰์ด ์„ ํƒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.


<br><br><br>
> ์ถœ์ฒ˜ : ๋ฐ์ดํ„ฐ์˜จ์—์–ด โ€“ ํ•œ๊ตญ๋ฐ์ดํ„ฐ์‚ฐ์—…์ง„ํฅ์›([https://dataonair.or.kr](https://dataonair.or.kr))
Previous2-1-1. ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ฐœ์š”Next2-1-3. ํ•จ์ˆ˜(FUNCTION)

Last updated 3 years ago

Was this helpful?

๐Ÿ˜ง
โญ
๐ŸŒ