Spark SQL: альтернатива для функции «содержит» - PullRequest
0 голосов
/ 29 апреля 2020

Спасибо, что прочитали мой вопрос.

Я знаю об этом коде

df.filter(col("c1").contains(col("c2")))

, но я хочу знать, как я могу сделать то же самое с этим Spark SQL query.

Я пытаюсь:

... WHERE c1 LIKE '%' + c2 '%' AND ... WHERE c1 LIKE '%{c2}%'

как обычно SQL, но это не сработало. Как я вижу в df.explain, он пытается найти столбец c1, содержащий буквально 'c2'.

Далее я пытаюсь:

... WHERE c1 LIKE concat('%', c2, '%')

Это работает! Но кроме c2 содержит «%». Я не могу найти, как экранировать символы '%' в c2.

Я ищу Spark SQL functions https://spark.apache.org/docs/latest/api/sql/index.html, но не могу найти.

Anyone может помочь? Я действительно ценю это.

...