ключевое слово ‘ilike’ не работает с spark SQL

apache-spark #pyspark #apache-spark-sql

#apache-spark #pyspark #apache-spark-sql

Вопрос:

Я изучаю apache-spark. И что кажется запутанным, так это,

эта команда работает

results = spark.sql("select * from df_sql_view where name LIKE '%i%'")

но это выдает ошибку

results = spark.sql("select * from df_sql_view where name ILIKE '%i%'")

 ParseException: 
mismatched input 'ILIKE' expecting {<EOF>, ';'}(line 1, pos 37)

== SQL ==
select * from df_sql_view where name ILIKE '%i%'
-------------------------------------^^^
 

Может кто-нибудь, пожалуйста, помогите мне понять, почему и как это решить. Спасибо.

Ответ №1:

Spark SQL поддерживает только like и rlike . Итак, вы хотели бы использовать rlike правильное регулярное выражение для замены ilike

Комментарии:

1. сработало. Спасибо. 🙂 но почему это так? является ли rlike более полезной функцией или разработчики spark просто решили не добавлять ilike?