【发布时间】:2021-09-22 21:58:25
【问题描述】:
示例查询:
df = spark.sql("""
select distinct key,
coalesce(get_json_object(col2,'$.value'), case when col2 like '%value\\u0022: false%' then 'false' when col2 like '%value\\u0022: true%' then 'true' end) as col2flag
from Table
""")
在 Impala 中存在一个有效载荷结构,其中 \u0022 用于所需的值。在 Impala SQL 中转义这个 unicode 字符是通过一个额外的 \ 斜线来完成的。
当通过 Pyspark 提取此 DF 时,从 case 语句提取的值在预期为 true 时为 null。我已经用一个正斜杠和两个斜杠尝试了上述查询。
【问题讨论】: