MySQL 특정단어 포함까지 글자 잘라낸 후 SELECT 하기
2020. 6. 2. 16:51ㆍDBMS/MySQL
728x90
반응형
특정 단어 포함된 것 까지 잘라내기 후 SELECT 하기
가끔 데이터를 보여줄 때 어느 부분 이전만 잘라내서 select 하여 가져올 경우가 있는데
이럴 때 데이터를 가공하여 처리를 할 수가 있다.
예를 들어 "_" 언더바까지만 잘라낸다고 하면
1. 언더바의 위치를 찾고
2. 위치만큼 글자를 잘라낸다.
정도가 될 수 있는데 다행히도 내장 함수들이 있어서 너무 간편하게 자를 수 있다.
<기대결과>
<쿼리>
TRIM(SUBSTR(ItemName, 1,INSTR(ItemName,'_')-1))
▶ TRIM : 공백을 제거해주는 함수
▶ SUBSTR : 글자의 시작부터 길이만큼 글자를 잘라냄
SUBSTR(대상 문자, 시작인덱스, 길이)
▶ INSTR : 특정문자의 위치를 리턴 함
INSTR(대상 문자, 찾을 문자)
즉, 언더바의 위치를 INSTR로 찾아서 위치 4를 찾고
SUBSTR로 처음부터 위치 4까지 잘라낸 후 언더바의 위치인 4 니까 언더바까지 포함 된 문자가 나오니 -1을 해준다.
728x90
반응형
'DBMS > MySQL' 카테고리의 다른 글
MySQL Between 안쓰고 날짜비교하는 법 (0) | 2022.03.06 |
---|---|
[MYSQL] DB에 Schema와 Table들을 조회하자 (0) | 2020.12.17 |
MySQL 비슷한 항목 그룹해서 SELECT (0) | 2020.04.17 |
(MySQL) 계정 생성, 계정 확인, 계정 모든권한부여, 계정 권한 확인 (0) | 2020.04.17 |
MySQL 다른 테이블의 정보 가져오기 (0) | 2020.04.17 |