https://programmers.co.kr/learn/courses/30/lessons/59047
์ฝ๋ฉํ ์คํธ ์ฐ์ต - ์ด๋ฆ์ el์ด ๋ค์ด๊ฐ๋ ๋๋ฌผ ์ฐพ๊ธฐ
ANIMAL_INS ํ ์ด๋ธ์ ๋๋ฌผ ๋ณดํธ์์ ๋ค์ด์จ ๋๋ฌผ์ ์ ๋ณด๋ฅผ ๋ด์ ํ ์ด๋ธ์ ๋๋ค. ANIMAL_INS ํ ์ด๋ธ ๊ตฌ์กฐ๋ ๋ค์๊ณผ ๊ฐ์ผ๋ฉฐ, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE๋ ๊ฐ๊ฐ ๋๋ฌผ์ ์์ด๋
programmers.co.kr
๋ฌธ์
๋ณดํธ์์ ๋์๊ฐ์ ํ ๋จธ๋๊ฐ ๊ธฐ๋ฅด๋ ๊ฐ๋ฅผ ์ฐพ๋ ์ฌ๋์ด ์ฐพ์์์ต๋๋ค. ์ด ์ฌ๋์ด ๋งํ๊ธธ ํ ๋จธ๋๊ฐ ๊ธฐ๋ฅด๋ ๊ฐ๋ ์ด๋ฆ์ 'el'์ด ๋ค์ด๊ฐ๋ค๊ณ ํฉ๋๋ค. ๋๋ฌผ ๋ณดํธ์์ ๋ค์ด์จ ๋๋ฌผ ์ด๋ฆ ์ค, ์ด๋ฆ์ "EL"์ด ๋ค์ด๊ฐ๋ ๊ฐ์ ์์ด๋์ ์ด๋ฆ์ ์กฐํํ๋ SQL๋ฌธ์ ์์ฑํด์ฃผ์ธ์. ์ด๋ ๊ฒฐ๊ณผ๋ ์ด๋ฆ ์์ผ๋ก ์กฐํํด์ฃผ์ธ์. ๋จ, ์ด๋ฆ์ ๋์๋ฌธ์๋ ๊ตฌ๋ถํ์ง ์์ต๋๋ค.
ํ์ด
SELECT ANIMAL_ID, NAME
FROM ANIMAL_INS
WHERE NAME LIKE "%EL%" AND ANIMAL_TYPE = 'DOG'
ORDER BY NAME;
1. ์ด๋ฆ์ el์ด ๋ค์ด๊ฐ๋ค๊ณ ํ์ผ๋ฏ๋ก
- '%' : ์ปฌ๋ผ๋ช LIKE '๋ค์ด๊ฐ์ผํ๋ ๊ธ์%'
- ์ ์ฉ) NAME LIKE "%EL%"
2. ๋๋ฌผ์ข ์ด ๊ฐ์์ง
- ANIMAL_TYPE='DOG' : ๋น๊ต ์ฐ์ฐ์๋ฅผ ์ถ๊ฐํด์ค๋ค
https://programmers.co.kr/learn/courses/30/lessons/59409
์ฝ๋ฉํ ์คํธ ์ฐ์ต - ์ค์ฑํ ์ฌ๋ถ ํ์ ํ๊ธฐ
ANIMAL_INS ํ ์ด๋ธ์ ๋๋ฌผ ๋ณดํธ์์ ๋ค์ด์จ ๋๋ฌผ์ ์ ๋ณด๋ฅผ ๋ด์ ํ ์ด๋ธ์ ๋๋ค. ANIMAL_INS ํ ์ด๋ธ ๊ตฌ์กฐ๋ ๋ค์๊ณผ ๊ฐ์ผ๋ฉฐ, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE๋ ๊ฐ๊ฐ ๋๋ฌผ์ ์์ด๋
programmers.co.kr
๋ฌธ์ (์ค์ฑํ ์ฌ๋ถ ํ์ ํ๊ธฐ) : CASE๋ฌธ
๋ณดํธ์์ ๋๋ฌผ์ด ์ค์ฑํ๋์๋์ง ์๋์ง ํ์ ํ๋ ค ํฉ๋๋ค. ์ค์ฑํ๋ ๋๋ฌผ์ SEX_UPON_INTAKE ์ปฌ๋ผ์ 'Neutered' ๋๋ 'Spayed'๋ผ๋ ๋จ์ด๊ฐ ๋ค์ด์์ต๋๋ค. ๋๋ฌผ์ ์์ด๋์ ์ด๋ฆ, ์ค์ฑํ ์ฌ๋ถ๋ฅผ ์์ด๋ ์์ผ๋ก ์กฐํํ๋ SQL๋ฌธ์ ์์ฑํด์ฃผ์ธ์. ์ด๋ ์ค์ฑํ๊ฐ ๋์ด์๋ค๋ฉด 'O', ์๋๋ผ๋ฉด 'X'๋ผ๊ณ ํ์ํด์ฃผ์ธ์.
ํ์ด
CASE๋ฌธ ๊ธฐ๋ณธ ์ฌ์ฉ๋ฒ
CASE
WHEN ์กฐ๊ฑด
THEN '๋์ฒด๊ฐ'
WHEN ์กฐ๊ฑด2
THEN '๋์ฒด๊ฐ2'
ELSE 'WHEN ์กฐ๊ฑด์ ํด๋น ์๋ ๊ฒฝ์ฐ ๊ธฐ๋ณธ๊ฐ'
END
SELECT ANIMAL_ID, NAME,
CASE
WHEN SEX_UPON_INTAKE LIKE "%Neutered%" OR SEX_UPON_INTAKE LIKE "%Spayed%"
THEN "O"
ELSE "X"
END AS '์ค์ฑํ'
FROM ANIMAL_INS;
- CASE๋ฌธ ๋ฏ์ด๋ณด๊ธฐ..
SELECT ANIMAL_ID, NAME,
CASE --CASE ์์
WHEN SEX_UPON_INTAKE LIKE "%Neutered%" OR SEX_UPON_INTAKE LIKE "%Spayed%" --์กฐ๊ฑด
THEN "O" --๋์ฒด๊ฐ
ELSE "X" --์กฐ๊ฑด์ ํด๋นํ์ง ์์๊ฒฝ์ฐ
END AS '์ค์ฑํ' --CASE ๋
FROM ANIMAL_INS;
'๐ฌ MySQL > ๋ฌธ์ ํ์ด' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[MySQL] SQL ์ฝ๋ฉํ ์คํธ Day9 (0) | 2022.02.20 |
---|---|
[MySQL] SQL ์ฝ๋ฉํ ์คํธ Day8 (0) | 2022.02.19 |
[MySQL] SQL ์ฝ๋ฉํ ์คํธ Day6 (0) | 2022.02.18 |
[MySQL] SQL ์ฝ๋ฉํ ์คํธ Day5 (0) | 2022.02.17 |
[MySQL] SQL ์ฝ๋ฉํ ์คํธ Day4 (0) | 2022.02.16 |
https://programmers.co.kr/learn/courses/30/lessons/59047
์ฝ๋ฉํ ์คํธ ์ฐ์ต - ์ด๋ฆ์ el์ด ๋ค์ด๊ฐ๋ ๋๋ฌผ ์ฐพ๊ธฐ
ANIMAL_INS ํ ์ด๋ธ์ ๋๋ฌผ ๋ณดํธ์์ ๋ค์ด์จ ๋๋ฌผ์ ์ ๋ณด๋ฅผ ๋ด์ ํ ์ด๋ธ์ ๋๋ค. ANIMAL_INS ํ ์ด๋ธ ๊ตฌ์กฐ๋ ๋ค์๊ณผ ๊ฐ์ผ๋ฉฐ, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE๋ ๊ฐ๊ฐ ๋๋ฌผ์ ์์ด๋
programmers.co.kr
๋ฌธ์
๋ณดํธ์์ ๋์๊ฐ์ ํ ๋จธ๋๊ฐ ๊ธฐ๋ฅด๋ ๊ฐ๋ฅผ ์ฐพ๋ ์ฌ๋์ด ์ฐพ์์์ต๋๋ค. ์ด ์ฌ๋์ด ๋งํ๊ธธ ํ ๋จธ๋๊ฐ ๊ธฐ๋ฅด๋ ๊ฐ๋ ์ด๋ฆ์ 'el'์ด ๋ค์ด๊ฐ๋ค๊ณ ํฉ๋๋ค. ๋๋ฌผ ๋ณดํธ์์ ๋ค์ด์จ ๋๋ฌผ ์ด๋ฆ ์ค, ์ด๋ฆ์ "EL"์ด ๋ค์ด๊ฐ๋ ๊ฐ์ ์์ด๋์ ์ด๋ฆ์ ์กฐํํ๋ SQL๋ฌธ์ ์์ฑํด์ฃผ์ธ์. ์ด๋ ๊ฒฐ๊ณผ๋ ์ด๋ฆ ์์ผ๋ก ์กฐํํด์ฃผ์ธ์. ๋จ, ์ด๋ฆ์ ๋์๋ฌธ์๋ ๊ตฌ๋ถํ์ง ์์ต๋๋ค.
ํ์ด
SELECT ANIMAL_ID, NAME
FROM ANIMAL_INS
WHERE NAME LIKE "%EL%" AND ANIMAL_TYPE = 'DOG'
ORDER BY NAME;
1. ์ด๋ฆ์ el์ด ๋ค์ด๊ฐ๋ค๊ณ ํ์ผ๋ฏ๋ก
- '%' : ์ปฌ๋ผ๋ช LIKE '๋ค์ด๊ฐ์ผํ๋ ๊ธ์%'
- ์ ์ฉ) NAME LIKE "%EL%"
2. ๋๋ฌผ์ข ์ด ๊ฐ์์ง
- ANIMAL_TYPE='DOG' : ๋น๊ต ์ฐ์ฐ์๋ฅผ ์ถ๊ฐํด์ค๋ค
https://programmers.co.kr/learn/courses/30/lessons/59409
์ฝ๋ฉํ ์คํธ ์ฐ์ต - ์ค์ฑํ ์ฌ๋ถ ํ์ ํ๊ธฐ
ANIMAL_INS ํ ์ด๋ธ์ ๋๋ฌผ ๋ณดํธ์์ ๋ค์ด์จ ๋๋ฌผ์ ์ ๋ณด๋ฅผ ๋ด์ ํ ์ด๋ธ์ ๋๋ค. ANIMAL_INS ํ ์ด๋ธ ๊ตฌ์กฐ๋ ๋ค์๊ณผ ๊ฐ์ผ๋ฉฐ, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE๋ ๊ฐ๊ฐ ๋๋ฌผ์ ์์ด๋
programmers.co.kr
๋ฌธ์ (์ค์ฑํ ์ฌ๋ถ ํ์ ํ๊ธฐ) : CASE๋ฌธ
๋ณดํธ์์ ๋๋ฌผ์ด ์ค์ฑํ๋์๋์ง ์๋์ง ํ์ ํ๋ ค ํฉ๋๋ค. ์ค์ฑํ๋ ๋๋ฌผ์ SEX_UPON_INTAKE ์ปฌ๋ผ์ 'Neutered' ๋๋ 'Spayed'๋ผ๋ ๋จ์ด๊ฐ ๋ค์ด์์ต๋๋ค. ๋๋ฌผ์ ์์ด๋์ ์ด๋ฆ, ์ค์ฑํ ์ฌ๋ถ๋ฅผ ์์ด๋ ์์ผ๋ก ์กฐํํ๋ SQL๋ฌธ์ ์์ฑํด์ฃผ์ธ์. ์ด๋ ์ค์ฑํ๊ฐ ๋์ด์๋ค๋ฉด 'O', ์๋๋ผ๋ฉด 'X'๋ผ๊ณ ํ์ํด์ฃผ์ธ์.
ํ์ด
CASE๋ฌธ ๊ธฐ๋ณธ ์ฌ์ฉ๋ฒ
CASE
WHEN ์กฐ๊ฑด
THEN '๋์ฒด๊ฐ'
WHEN ์กฐ๊ฑด2
THEN '๋์ฒด๊ฐ2'
ELSE 'WHEN ์กฐ๊ฑด์ ํด๋น ์๋ ๊ฒฝ์ฐ ๊ธฐ๋ณธ๊ฐ'
END
SELECT ANIMAL_ID, NAME,
CASE
WHEN SEX_UPON_INTAKE LIKE "%Neutered%" OR SEX_UPON_INTAKE LIKE "%Spayed%"
THEN "O"
ELSE "X"
END AS '์ค์ฑํ'
FROM ANIMAL_INS;
- CASE๋ฌธ ๋ฏ์ด๋ณด๊ธฐ..
SELECT ANIMAL_ID, NAME,
CASE --CASE ์์
WHEN SEX_UPON_INTAKE LIKE "%Neutered%" OR SEX_UPON_INTAKE LIKE "%Spayed%" --์กฐ๊ฑด
THEN "O" --๋์ฒด๊ฐ
ELSE "X" --์กฐ๊ฑด์ ํด๋นํ์ง ์์๊ฒฝ์ฐ
END AS '์ค์ฑํ' --CASE ๋
FROM ANIMAL_INS;
'๐ฌ MySQL > ๋ฌธ์ ํ์ด' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[MySQL] SQL ์ฝ๋ฉํ ์คํธ Day9 (0) | 2022.02.20 |
---|---|
[MySQL] SQL ์ฝ๋ฉํ ์คํธ Day8 (0) | 2022.02.19 |
[MySQL] SQL ์ฝ๋ฉํ ์คํธ Day6 (0) | 2022.02.18 |
[MySQL] SQL ์ฝ๋ฉํ ์คํธ Day5 (0) | 2022.02.17 |
[MySQL] SQL ์ฝ๋ฉํ ์คํธ Day4 (0) | 2022.02.16 |