SUBSTR : ๋ฌธ์์ด์ ์ผ๋ถ๋ฅผ ์ถ์ถ
- 4๊ฐ์ง ํํ๋ก ์ฌ์ฉํ ์ ์์
ํ๋ผ๋ฏธํฐ ์ค๋ช
- str(varchar) : ์๋ณธ ๋ฌธ์์ด
- pos(int) : ์ถ์ถํ ๋ฌธ์์ด ์์ ์ธ๋ฑ์ค
- 1๋ถํฐ ์์
- ์์๋ ๊ฐ๋ฅ
- len(int) : ์ถ์ถํ ๋ฌธ์์ด ๊ธธ์ด
SUBSTR(str, pos), SUBSTR(str FROM pos)
- ์์ ์์น๋ถํฐ ๋๊น์ง ์ถ์ถ
SELECT SUBSTR('๋ชจ๋๋ฆฌ์ ๊ฐ๋ฐ ๋ฒจ๋ก๊ทธ', 6);
SELECT SUBSTR('๋ชจ๋๋ฆฌ์ ๊ฐ๋ฐ ๋ฒจ๋ก๊ทธ' FROM 6);
-> ๊ฐ๋ฐ ๋ฒจ๋ก๊ทธ
SELECT SUBSTR('๋ชจ๋๋ฆฌ์ ๊ฐ๋ฐ ๋ฒจ๋ก๊ทธ', -3);
SELECT SUBSTR('๋ชจ๋๋ฆฌ์ ๊ฐ๋ฐ ๋ฒจ๋ก๊ทธ' FROM -3);
-> ๋ฒจ๋ก๊ทธ
SUBSTR(str, pos, len), SUBSTR(str FROM pos FOR len)
- ์์ ์์น๋ถํฐ ์ง์ ํ ๊ธธ์ด ๋งํผ ์ถ์ถ
SELECT SUBSTR('๋ชจ๋๋ฆฌ์ ๊ฐ๋ฐ ๋ฒจ๋ก๊ทธ', 6, 2);
SELECT SUBSTR('๋ชจ๋๋ฆฌ์ ๊ฐ๋ฐ ๋ฒจ๋ก๊ทธ' FROM 6 FOR 2);
-> ๊ฐ๋ฐ
SELECT SUBSTR('๋ชจ๋๋ฆฌ์ ๊ฐ๋ฐ ๋ฒจ๋ก๊ทธ', -6, 4);
SELECT SUBSTR('๋ชจ๋๋ฆฌ์ ๊ฐ๋ฐ ๋ฒจ๋ก๊ทธ' FROM -6 FOR 4);
-> ๊ฐ๋ฐ ๋ฒจ
CONCAT : ๋ฌธ์ ์ฐ๊ฒฐ
CONCAT(str)
- str(varchar*) : ์ฐ๊ฒฐ ํ ๋ฌธ์๋ค. ์ผํ(,)๋ก ๋๋ ์ ์
๋ ฅ
SELECT CONCAT('๋ชจ๋๋ฆฌ', '์', ' ', '๋ฒจ๋ก๊ทธ');
-> ๋ชจ๋๋ฆฌ์ ๋ฒจ๋ก๊ทธ
๋ฌธ์์ด ๋ถ๋ถ ์์ ์์
user ํ
์ด๋ธ
- ์์ ๊ฐ์ ํ
์ด๋ธ์๋ค๊ณ ํ์ ๋, group์ด
A
์ธ row๋ค์ tag ๊ฐ ์ค ABC
๋ฅผ AAA
๋ก ์ผ๊ด์ ์ผ๋ก ๋ณ๊ฒฝํด์ผ ๋๋ ๊ฒฝ์ฐ๊ฐ ์๊ธธ ์ ์๋ค.
- ์ด ๋ SUBSTR๊ณผ CONCAT์ ์ด์ฉํ๋ฉด ๊ฐ๋จํ ํด๊ฒฐํ ์ ์๋ค.
AAA
+ ๊ธฐ์กด tag์ 4๋ฒ์งธ ๋ฌธ์๋ถํฐ ๋๊น์ง ์ถ์ถ
UPDATE user
SET tag = CONCAT('AAA', SUBSTR(tag, 4))
WHERE group = 'A'
๊ฒฐ๊ณผ