โถ SELECT ๋ช ๋ น๋ฌธ๊ณผ ๊ณตํต ์์
โ
1. ์์น ์์๊ณผ ์ซ์ ์ฒ๋ฆฌ ํจ์
โ
์์ 6-1) ๋ฑ๋ก๊ธ ์ด์ก์ ๋ณ๊ฒฝํ๋ผ.
โ
โ
์์ 6-2) ๋ฉ์ ๊ธ ์ด์ก์ "๋ฑ๋ก๊ธ ์ด์ก - ์ฅํ๊ธ ์ด์ก"์ด๋ค. ๋ฉ์ ๊ธ ์ด์ก์ ๋ณ๊ฒฝํ๋ผ.
โ
โ
โ
์์ 6-3) ์ฐํธ๋ฒํธ๊ฐ "06034"์ด๊ณ ๋๋ก๋ช ์ด "์๊ตฌ์ ๋ก2๊ธธ"์ธ ์ฐํธ๋ฒํธ, ์๋์ด๋ฆ, ์๊ตฐ์ด๋ฆ, ๋๋ก๋ช , ๊ฑด๋ฌผ๋ฒํธ๋ณธ๋ฒ, ๊ฑด๋ฌผ๋ช , ๋ฒ์ ๋๋ช ์ ์ถ๋ ฅํ๋ผ.
โ
โ
โโ
2. ์ซ์ ์ฒ๋ฆฌ ํจ์
โ*round, truncate ํจ์
round ํจ์๋ ์ซ์๋ฅผ ์์์ ์ดํ ์๋ฆฟ์์์ ๋ฐ์ฌ๋ฆผ,
truncate ํจ์๋ ์ซ์๋ฅผ ์์์ ์ดํ ์๋ฆฟ์์์ ๋ฒ๋ฆฐ๋ค,
mysql> select round(123456.789, 2), truncate(123456.789, 2);
mysql> select round(12345678.901, -3), truncate(12345678.901, -3);
โ
โ
*floor, ceil ํจ์
floor ํจ์๋ ์์์ ์๋์ ์๋ฅผ ๋ฌด์กฐ๊ฑด ์ ์ญํ์ฌ ์ ์ ๊ฐ์ ๋ฐํํ๋ค.
ceil ํจ์๋ ์์์ ์๋์ ์๋ ๋ฌด์ํ๊ณ ๋ฌด์กฐ๊ฑด ์ฌ๋ฆผ์ ํ์ฌ ์ ์๋ฅผ ๋ฐํํ๋ค.
โ
mysql> select floor(123456.789), ceil(123456.123);
โ
โ
*mod ํจ์
์ฒซ๋ฒ์งธ ์ธ์๋ฅผ ๋ ๋ฒ์งธ ์ธ์๋ก ๋๋์ด ๋๋จธ์ง๋ฅผ ๋ฐํํ๋ค.
โ
mysql> select mod(10,3), mod(5,8);
โ
โ
*abs ํจ์
์ ๋๊ฐ์ ์ถ๋ ฅ
โ
mysql> select abs(124), abs(-124);
โ
โ
*powํจ์ ๋๋ powerํจ์
์ ๊ณฑ์ ๊ฐ์ ๊ตฌํ๋ ํจ์์ด๋ฉฐ ์์ซ์ ์ด ์๋ ๊ฒฝ์ฐ์๋ ์คํ์ด ๋๋ค. ๋จ, ์์๋ ์์๋ก ์น์ฒ๋ฆฌ๋๋ค.
โ
mysql> select pow(2,4), pow(-2.5,2), pow(1.5,6);
โ
โ
*greatest, leastํจ์
greatest ํจ์๋ ์ฃผ์ด์ง ์ซ์ ์ค ๊ฐ์ฅ ํฐ ์๋ฅผ ๋ฐํํ๋ ๊ฒ์ด๊ณ ,
least ํจ์๋ ๋ฐ๋๋ก ๊ฐ์ฅ ์์ ์๋ฅผ ๋ฐํํ๋ค.
โ
mysql> select greatest(15,45,32,65), least(15,45,32,65);
โ
โ
์์ 6-4) ์ฌํ์๋ค์ ๋ฑ๋ก๊ธ์ก ๋น๋กํ ์ฅํ๊ธ์ ๋น์จ์ ๋ช %์ธ๊ฐ ?
โ
mysql> select fee_total "๋ฑ๋ก๊ธ์ก", jang_total "์ฅํ๊ธ์ก",
→ round(ifnull(jang_total, 0) / fee_total*100,2) "๋น์จ"
→ from fee;
โ
โ
*์ค์นผ๋ผ ํจ์
์ฐ์ฐ์ ์ํํ๊ธฐ ์ํด์ ์ฌ์ฉ๋๋ค.
โ
concatํจ์ : ๋ ๋ฌธ์์ด์ ์ฐ๊ฒฐ์์ผ ํฉ์ณ์ค๋ค
substringํจ์ : ์ง์ ๋ ์์น์์ ์ง์ ๋ ๊ธธ์ด๋งํผ์ ๋ฌธ์์ด์ ์ถ์ถํ๋ค.
lengthํจ์ : ๋ฌธ์์ด์ ๊ธธ์ด๋ฅผ ์ ์๊ฐ์ผ๋ก ๋ฐํํ๋ค.
instrํจ์ : ๋ฌธ์์ด์์ ํน์ ๋ฌธ์์ ์์น๋ฅผ ๋ฐํํ๋ค.
lpadํจ์ : ์ผ์ชฝ์ ์ง์ ๋ ๋ฌธ์๋ฅผ ์ง์ ๋ ๊ธธ์ด๋งํผ ์ฑ์์ค๋ค.
rpadํจ์ : ์ค๋ฅธ์ชฝ์ ์ง์ ๋ ๋ฌธ์๋ฅผ ์ง์ ๋ ๊ธธ์ด๋งํผ ์ฑ์์ค๋ค.
lowerํจ์ : ๋ฌธ์์ด์ ๋ชจ๋ ์๋ฌธ์๋ก ๋ฐ๊ฟ์ค๋ค.
upperํจ์ : ๋ฌธ์์ด์ ๋ชจ๋ ๋๋ฌธ์๋ก ๋ฐ๊ฟ์ค๋ค.
initcapํจ์ : ๋ฌด๋ฎ์ด์ ์ํ ๊ฐ ๋จ์ด๋ณ๋ก ์ฒซ ๊ธ์๋ฅผ ๋๋ฌธ์๋ก, ๋๋จธ์ง ๋ถ๋ถ์ ์๋ฌธ์๋ก ๋ฐ๊พธ์ด์ค๋ค.
โโ
โ
์์ 6-5) ํ๋ฒ์ด 20191001์ธ ํ์์ ํ๋ฒ, ์ด๋ฆ, ์๋ฌธ์ด๋ฆ์ ์ถ๋ ฅํ๋ผ.
๋จ, ์๋ฌธ์ด๋ฆ์ ๋๋ฌธ์๋ก ์ถ๋ ฅํ๋ผ.
mysql> select stu_no, stu_name, upper(stu_ename)
→ from student
→ where stu_no = '20191001';
โ
โ
์์ 6-6) 2ํ๋ ํ์์ ๋ฒํธ์ ์ด๋ฆ, ์๋ฌธ์ด๋ฆ ๊ทธ๋ฆฌ๊ณ ์๋ฌธ์ด๋ฆ์ ๊ธธ์ด๋ฅผ ๋ํ๋ด์ด๋ผ.
mysql> select stu_no, stu_name, stu_ename, length(rtrim(stu_ename))
→ from student
→ where grade = 2;
- rtrim(right trim)ํจ์ : ์์์น ๊ฐ์์ ์ฐ์ธก์ ์๋ ๋ถํ์ํ ๊ณต๋ฐฑ์ ๋ชจ๋ ์ ๊ฑฐํ๋ค.
'Data Base > MySQL' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
MySQL 14๋ฒ์งธ์์ (0) | 2021.02.08 |
---|---|
MySQL 13๋ฒ์งธ์์ (0) | 2021.02.08 |
MySQL 11๋ฒ์งธ์์ (0) | 2021.02.08 |
MySQL 10๋ฒ์งธ์์ (0) | 2021.02.08 |
MySQL 9๋ฒ์งธ ์์ (0) | 2021.02.08 |
๋๊ธ