stonedb
stonedb copied to clipboard
bug: SELECT * FROM BUG_12595 WHERE a LIKE 'hakan\n%' ESCAPE '\n' or ESCAPE '',ERROR : Incorrect arguments to ESCAPE
Describe the problem
SET @@SQL_MODE='NO_BACKSLASH_ESCAPES';
SHOW LOCAL VARIABLES LIKE 'SQL_MODE';
CREATE TABLE BUG_12595(a varchar(100))engine=stonedb;
INSERT INTO BUG_12595 VALUES ('hakan%'), ('hakank'), ("ha%an");
SELECT * FROM BUG_12595 WHERE a LIKE 'hakan\%' ESCAPE '\\';
SELECT * FROM BUG_12595 WHERE a LIKE 'hakan%' ESCAPE '';
SELECT * FROM BUG_12595 WHERE a LIKE 'hakan\n%' ESCAPE '\n';
##The above three select errors are as follows
ERROR 1210 (HY000): Incorrect arguments to ESCAPE
Expected behavior
##The following is:innodb test result
(1)SELECT * FROM BUG_12595 WHERE a LIKE 'hakan\%' ESCAPE '\\';
+--------+
| a |
+--------+
| hakan% |
+--------+
1 row in set (0.00 sec)
(2)SELECT * FROM BUG_12595 WHERE a LIKE 'hakan%' ESCAPE '';
+--------+
| a |
+--------+
| hakan% |
| hakank |
+--------+
2 rows in set (0.00 sec)
(3)SELECT * FROM BUG_12595 WHERE a LIKE 'hakan\n%' ESCAPE '\n';
+--------+
| a |
+--------+
| hakan% |
+--------+
1 row in set (0.00 sec)
How To Reproduce
SET @@SQL_MODE='NO_BACKSLASH_ESCAPES';
SHOW LOCAL VARIABLES LIKE 'SQL_MODE';
CREATE TABLE BUG_12595(a varchar(100))engine=stonedb;
INSERT INTO BUG_12595 VALUES ('hakan%'), ('hakank'), ("ha%an");
SELECT * FROM BUG_12595 WHERE a LIKE 'hakan\%' ESCAPE '\\';
SELECT * FROM BUG_12595 WHERE a LIKE 'hakan%' ESCAPE '';
SELECT * FROM BUG_12595 WHERE a LIKE 'hakan\n%' ESCAPE '\n';
Environment
- StoneDB for mysql5.7 (release)
- Ubuntu 20.04.4
Are you interested in submitting a PR to solve the problem?
- [ ] Yes, I will!