Dooyoung Hwang created SPARK-38168: -------------------------------------- Summary: LikeSimplification handles escape character Key: SPARK-38168 URL: https://issues.apache.org/jira/browse/SPARK-38168 Project: Spark Issue Type: Improvement Components: SQL Affects Versions: 3.2.0, 3.3.0 Reporter: Dooyoung Hwang
Currently, LikeSimplification rule of catalyst is skipped if the pattern contains escape character. {noformat} SELECT * FROM tbl LIKE '%100\%' ... == Optimized Logical Plan == Filter (isnotnull(c_1#0) && c_1#0 LIKE %100\%) +- Relation[c_1#0,c_2#1,c_3#2] ... {noformat} The filter LIKE '%100\%' in this query is not optimized into 'EndsWith' of StringType. LikeSimplification rule can consider a special character(wildcard(%, _) or escape character) as a plain character if the character follows an escape character. By doing that, LikeSimplification rule can optimize the filter like below. {noformat} SELECT * FROM tbl LIKE '%100\%' ... == Optimized Logical Plan == Filter (isnotnull(c_1#0) && EndsWith(c_1#0, 100%)) +- Relation[c_1#0,c_2#1,c_3#2] {noformat} -- This message was sent by Atlassian Jira (v8.20.1#820001) --------------------------------------------------------------------- To unsubscribe, e-mail: issues-unsubscr...@spark.apache.org For additional commands, e-mail: issues-h...@spark.apache.org