SQL 자주쓰는 쿼리 !! 문자열 조작 함수 편 !

반응형



아... 문자열 조작 함수같은건 워낙 방법도 많고
종류도 많아서 진짜 자주쓰는 쿼리만 모아모아모아서!!!! 적어 보겠씀ㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁ

서론없이 본론으로 출발~~~~~~~~!!!!!!!!! ( 박명수씨 톤으로 )


테스트를 위해 우선 데이터 2개를 넣어 놨습니다.


문자열을 왼쪽(오른쪽) 부터해서 지정한 수 만큼 길이의 문자열을 반환

SELECT LEFT (RIGHT) ( 칼럼명, 수 ) FROM 테이블명;



문자열이 기존에 '홍길동' 에서 2자리만 뺀다고 명시하니 '홍길' 까지만 나왔네요



칼럼명에 해당하는 문자열 중 작은 따옴표 안의 찾을 값을 찾고, 그 앞에 있는 모든 문자열을 반환

SELECT SUBSTRING_INDEX ( 칼럼명, '찾을값', 숫자 ) FROM 테이블명;


말이 좀 어려운데...;;; 바로 확인 해보죠 ~
※ 여기에서 숫자는 몇번째로 나오는 찾을값을 찾을건지 명시합니다.
예를들어 1이라면 1번째 나오는 골뱅이, 2라면 두번째 나오는 골뱅이 앞의 모든 문자열이 되겟죠?

아까 이메일 같은 경우에 'abcd@abcd.com' 이라고 해서 가운데에 골뱅이가 있는데
골뱅이 앞의 문자열만 추출해 보겠습니다


1번 열 같은 경우 골뱅이 마크가 없으므로 그냥 모든 문자열이 고대로 출력 되었고,
2번 열은 골뱅이 앞 abcd만 출력되네요


SUBSTRING( 문자열, 시작 인덱스, 길이 ) 

문자열 중 시작 인덱스 번호에서부터 시작해서 길이로 지정한 만큼의 문자열을 반환



오... 테스트 하다가 알게 된 사실인데
SUBSTRING 뒤에 공백이 있으면 함수로 인식을 못하네요 ;;; ㅎㄷㄷㄷㄷ
SUBSTRING 과 괄호 사이엔 공백이 없어야 하나봅니다..


문자열을 대문자 혹은 소문자로 변환

UPPER(문자열) -> 대문자
LOWER(문자열) -> 소문자




문자열을 역순으로 만들기!

REVERSE(문자열)






문자열 좌,우 또는 공백 제거

LTRIM(문자열) 은 왼쪽 공백 제거, RTRIM(문자열) 은 오른쪽 공백 제거
TRIM(문자열) 은 양쪽 공백 모두 제거



테스트를 위해 일부로 좌우 양쪽에 공백이 잇는 문자열을 삽입한 후 테스트 했습니다.
사용자로부터 특정 값 입력 받을 때 유용한 쿼리!!


문자열의 길이를 반환 ( 참고로 공백이나 콤마도 길이에 포함된다 )

LENGTH (문자열)



참고로 한글은 2 Byte 이므로 값이 2가 증가 됩니다


아... 요기 까지 ...
이정도만 알아도 뭐... 조그마하게 사용하는덴 큰 지장 없지 않을까요~~??ㅋㅋㅋ

문자열이라.... 참 심오하도다.......




반응형

댓글

Designed by JB FACTORY