【发布时间】:2021-12-03 09:40:12
【问题描述】:
我在数据框中有一个二进制列,我希望将其转换为 xml,我使用创建了一个临时表
sourceDf = spark.read.csv(sourceFilePath, sep=',', header=True, inferSchema=True).createOrReplaceTempView("sourceTable")
并且想运行这个 sql 查询,它在 sql server 中完美运行,但在 databricks 中却不行
%sql
SELECT ID
,ORIGINATOR_ID
,INCIDENT_NUMBER
,ATTACHMENT_TYPE
,FORM_NAME
,FORM_DATA
,CAST( CAST( FORM_DATA as XML ).value('.','varbinary(max)') AS nvarchar(max) )
,START_DATE
,END_DATE
,OPERATOR_ID
FROM sourceTable
我收到以下错误:
Error in SQL statement: ParseException:
no viable alternative at input 'CAST( CAST( FORM_DATA as XML ).value('(line 7, pos 39)
有人可以帮忙吗?如果我回到源系统,我可以在 SQL Server 中运行相同的查询并且它运行良好,但我需要能够在笔记本中转换为 xml,然后才能解析 xml。
【问题讨论】:
标签: apache-spark pyspark apache-spark-sql databricks