SQL) 문자열 다루기_2 (LOCATE/LEFT/RIGHT/LOWER/UPPER)
본문 바로가기
Data Base/SQL

SQL) 문자열 다루기_2 (LOCATE/LEFT/RIGHT/LOWER/UPPER)

by 조훈이 2021. 9. 10.

SQL) 문자열 다루기 2

LOCATE(...), LEFT(...), RIGHT(...), LOWER(...), UPPER(...)


  LOCATE(sub_str, str) 

  : 문자열에서 어떠한 문자열이 처음 나오는 곳의 index 값을 출력한다.

 

LOCATE('aba''bcbababac')
'bcbababac' 문자열에서 'aba' 문자열이 처음 나오는 곳의 index
= 4

 

 

위 문자열 'bcbababac' 에서 'aba' 문자열이 처음 나오는 곳의 index 는 4 이다. 이 때 주의해야 할 점은, 대부분의 프로그래밍 언어에서 배열의 첫 시작 index는 0 이다. 하지만 MySQL 에서는 0이 아닌 1부터 시작한다.

 

SELECT LOCATE('aba', 'bcbababac') AS Locate
FROM DUAL;

<결과창>


  LEFT, RIGHT 

  : 문자열에서 좌측, 우측에서부터 원하는 길이만큼의 문자열을 출력한다.

 

LEFT('abcdefg', 3)
= 'abcdefg' 문자열에서 좌측으로부터 3의 길이를 가지는 문자열
= 'defg'
RIGHT('abcdefg', 3)
= 'abcdefg' 문자열에서 우측으로부터 3의 길이를 가지는 문자열
= 'abcd'

 

 

SELECT LEFT('abcdefg', 3) AS Left_3,
	RIGHT('abcdefg', 3) AS Right_3
FROM DUAL;

<결과창>


  LOWER, UPPER 

  : 문자열을 모두 소문자/대문자로 변경한 문자열을 출력한다.

 

LOWER('Hi, This is David')
= 'hi, this is david'
UPPER('Hi, This is David')
= 'HI, THIS IS DAVID'

 

SELECT LOWER('Hi, This is David') AS To_lower,
	   UPPER('Hi, This is David') AS To_upper
FROM DUAL;

<결과창>

 

  LOWER 를 사용했을 땐, 대문자로 입력이 되어있는 문자들은 모두 소문자로 바뀐 뒤 출력이 되었고, UPPER 를 사용했을 땐 소문자로 입력이 되어있는 문자들은 모두 대문자로 바뀐 뒤 출력이 되었다.

728x90

댓글