stonedb icon indicating copy to clipboard operation
stonedb copied to clipboard

bug: SELECT * FROM BUG_12595 WHERE a LIKE 'hakan\n%' ESCAPE '\n' or ESCAPE '',ERROR : Incorrect arguments to ESCAPE

Open shangyanwen opened this issue 2 years ago • 0 comments

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

  1. StoneDB for mysql5.7 (release)
  2. Ubuntu 20.04.4

Are you interested in submitting a PR to solve the problem?

  • [ ] Yes, I will!

shangyanwen avatar Jul 21 '22 04:07 shangyanwen