Repository: spark
Updated Branches:
refs/heads/branch-1.2 fc782896b -> 292da4ef2
[SPARK-4207][SQL] Query which has syntax like 'not like' is not working in
Spark SQL
Queries which has 'not like' is not working spark sql.
sql("SELECT * FROM records where value not like 'val%'")
same query works in Spark HiveQL
Author: ravipesala <[email protected]>
Closes #3075 from ravipesala/SPARK-4207 and squashes the following commits:
35c11e7 [ravipesala] Supported 'not like' syntax in sql
(cherry picked from commit 2b6e1ce6ee7b1ba8160bcbee97f5bbff5c46ca09)
Signed-off-by: Michael Armbrust <[email protected]>
Project: http://git-wip-us.apache.org/repos/asf/spark/repo
Commit: http://git-wip-us.apache.org/repos/asf/spark/commit/292da4ef
Tree: http://git-wip-us.apache.org/repos/asf/spark/tree/292da4ef
Diff: http://git-wip-us.apache.org/repos/asf/spark/diff/292da4ef
Branch: refs/heads/branch-1.2
Commit: 292da4ef25d6cce23bfde7b9ab663a574dfd2b00
Parents: fc78289
Author: ravipesala <[email protected]>
Authored: Mon Nov 3 13:07:41 2014 -0800
Committer: Michael Armbrust <[email protected]>
Committed: Mon Nov 3 13:07:56 2014 -0800
----------------------------------------------------------------------
.../main/scala/org/apache/spark/sql/catalyst/SqlParser.scala | 1 +
.../src/test/scala/org/apache/spark/sql/SQLQuerySuite.scala | 5 +++++
2 files changed, 6 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/spark/blob/292da4ef/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/SqlParser.scala
----------------------------------------------------------------------
diff --git
a/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/SqlParser.scala
b/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/SqlParser.scala
index 00fc4d7..5e613e0 100755
--- a/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/SqlParser.scala
+++ b/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/SqlParser.scala
@@ -242,6 +242,7 @@ class SqlParser extends AbstractSparkSQLParser {
| termExpression ~ (RLIKE ~> termExpression) ^^ { case e1 ~ e2 =>
RLike(e1, e2) }
| termExpression ~ (REGEXP ~> termExpression) ^^ { case e1 ~ e2 =>
RLike(e1, e2) }
| termExpression ~ (LIKE ~> termExpression) ^^ { case e1 ~ e2 =>
Like(e1, e2) }
+ | termExpression ~ (NOT ~ LIKE ~> termExpression) ^^ { case e1 ~ e2 =>
Not(Like(e1, e2)) }
| termExpression ~ (IN ~ "(" ~> rep1sep(termExpression, ",")) <~ ")" ^^ {
case e1 ~ e2 => In(e1, e2)
}
http://git-wip-us.apache.org/repos/asf/spark/blob/292da4ef/sql/core/src/test/scala/org/apache/spark/sql/SQLQuerySuite.scala
----------------------------------------------------------------------
diff --git a/sql/core/src/test/scala/org/apache/spark/sql/SQLQuerySuite.scala
b/sql/core/src/test/scala/org/apache/spark/sql/SQLQuerySuite.scala
index 6bf4393..702714a 100644
--- a/sql/core/src/test/scala/org/apache/spark/sql/SQLQuerySuite.scala
+++ b/sql/core/src/test/scala/org/apache/spark/sql/SQLQuerySuite.scala
@@ -938,4 +938,9 @@ class SQLQuerySuite extends QueryTest with
BeforeAndAfterAll {
checkAnswer(sql("SELECT key FROM testData WHERE key not between 0 and 10
order by key"),
(11 to 100).map(i => Seq(i)))
}
+
+ test("SPARK-4207 Query which has syntax like 'not like' is not working in
Spark SQL") {
+ checkAnswer(sql("SELECT key FROM testData WHERE value not like '100%'
order by key"),
+ (1 to 99).map(i => Seq(i)))
+ }
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]