#sql #apache-spark #apache-spark-sql
Вопрос:
У меня в таблице есть столбец типа string, где несколько значений разделены оператором pipe. Например, вот так,
Value1|Value2|Value3
Теперь я хочу, чтобы у меня был запрос, который покажет три строки для этой строки. В основном что-то похожее на концепцию взрыва в кадрах данных.
Обратите внимание, что я использую Spark SQL. И я хочу добиться этого с помощью SQL, а не фреймов данных.
Ответ №1:
Я заставил его работать, используя следующий запрос.
select t.*, explode(split(values, "\|")) as value
from table t
\|
здесь также можно заменить на [|]
. Простое указание |
не работает.