RLIKE 연산자의 도움으로 이러한 종류의 일치를 수행할 수 있습니다. 유일한 개념은 MySQL 쿼리에서 많은 백슬래시를 사용하는 것입니다. 아래의 예를 보면 더 명확해집니다 -
다음 표에는 'a\b' 및 'a\\b'와 같은 값이 있습니다.
mysql> select * from backslashes; +------+-------+ | Id | Value | +------+-------+ | 1 | 200 | | 2 | 300 | | 4 | a\\b | | 3 | a\b | +------+-------+ 4 rows in set (0.10 sec)
이제 'a\\b' 값을 일치시키려면 8개의 백슬래시를 작성해야 한다고 가정합니다. 두 번째 백슬래시는 첫 번째 백슬래시로 이스케이프되지 않기 때문에 2리터를 비교하려면 백슬래시를 두 배로 늘려야 하지만 MySQL 문자열에서 이러한 문자열에 대한 테이블을 쿼리할 때 이 두 배는 클라이언트에서 한 번, 클라이언트에서 한 번 발생합니다. 데이터베이스. 따라서 아래 쿼리에서와 같이 네 번 백슬래시를 사용해야 합니다. -
mysql> Select * from backslashes where value RLIKE 'a\\\\\\\\b'; +------+-------+ | Id | Value | +------+-------+ | 4 | a\\b | +------+-------+ 1 row in set (0.00 sec) mysql> Select * from backslashes where value RLIKE 'a\\\\b'; +------+-------+ | Id | Value | +------+-------+ | 3 | a\b | +------+-------+ 1 row in set (0.01 sec)