728x90
Escaping이란?
문자열 패턴 매칭을 위해 사용했던 '%', '_' 등의 기호들이
데이터 행 안에 문자열로 존재하여 이를 조건화하여 조회할 때 일반 문자처럼 취급하는 것을 말한다.
해결방법은?
조건식에 역슬래쉬를 붙히는 것이다.
예를 들어 문자열 '%'가 들어간 문장을 찾고 싶다면 아래와 같이 입력하면 된다.
1
|
SELECT * FROM test WHERE sentence LIKE '%\%%';
|
cs |
'%\%%' 을 자세히 설명하자면,
첫번 째 % 은 앞에 다른 문자열들이 존재하고(없어도 됨),
\% 은 '%'이라는 문자열을 표현하고,
마지막 %은 뒤에 다른 문자열들이 존재하는 경우(없어도 됨)를 말한다.
EX) 큰따옴표 조회
1
|
SELECT * FROM test WHERE sentence LIKE '%\"%\"%';
|
cs |
\" : 큰 따옴표를 표현
\"%\" : 큰 따옴표 두개 안에 다른 문자열이 있는 조건
728x90
'SQL' 카테고리의 다른 글
데이터 타입 바꾸기 CAST() (0) | 2021.01.22 |
---|---|
대소문자 구분하여 조회하기 (0) | 2021.01.22 |
MySQL 주의사항 (0) | 2021.01.21 |
UNIX Timestamp를 DATETIME 으로 변환하기 (0) | 2021.01.21 |
DATE 타입 조회 함수 (0) | 2021.01.21 |