반응형
MariaDB Bugs?LIKE Escape
서버 버전: 10.1.21-MariaDB-1~jessie
select 'a%b' like '%\%\%';
+--------------------+
| 'a%b' like '%\%\%' |
+--------------------+
| 1 |
+--------------------+
1 row in set (0.00 sec)
like 절은 'syslog + 리터럴 % + 리터럴 %'를 나타내지만 'a%b'와 일치합니다.
또는
select 'a%b' like '%\%\%\%\%\%';
+--------------------------+
| 'a%b' like '%\%\%\%\%\%' |
+--------------------------+
| 1 |
+--------------------------+
1 row in set (0.00 sec)
MySQL 5.5.38은 두 문 모두에 대해 0을 반환합니다.MariaDB 구문이 다른가요?
더하다
@rahul은 구문이 잘못되었다고 지적했기 때문에 더미 테이블을 생성하여 실행했습니다.
SELECT * FROM `table1` where 'a%b' like '%\%\%';
테이블 내의 모든 행과 일치합니다.
그러나 실행 시 필드1='a%b' 행이 일치하지 않습니다.
SELECT * from `table` where field1 like '%\%\%';
이제 10.1.22에서 테스트합니다.
이것은 10.1.22에서 수정된 것 같습니다.
Server version: 10.1.22-MariaDB-1~xenial mariadb.org binary distribution
Copyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]> select 'a%b' like '%\%\%';
+--------------------+
| 'a%b' like '%\%\%' |
+--------------------+
| 0 |
+--------------------+
1 row in set (0.00 sec)
언급URL : https://stackoverflow.com/questions/42924664/mariadb-bugs-like-escaping-broken
반응형
'programing' 카테고리의 다른 글
Vue 3에서 Vuex를 사용할 수 없음 (0) | 2022.10.08 |
---|---|
Spring @Autowired 사용법에 대해서 (0) | 2022.10.08 |
nullable 열은 insert 문에 null 값을 사용하지 않는 이유는 무엇입니까? (0) | 2022.10.08 |
소켓 '/tmp/mysql.sock'을 통해 로컬 MySQL 서버에 연결할 수 없습니다. (0) | 2022.10.08 |
왜 다들 표준 C형보다 typeef를 더 많이 쓰는 거죠? (0) | 2022.10.08 |