Azure Synapse 无服务器 SQL 池 - 从带引号的字段中选择时出错

Azure Synapse Serverless SQL Pool - Error while selecting from quoted fields

我在 Azure Synapse 中使用 Serverless/OnDemand SQL Pool 从包含引用字段的 CSV 文件中进行选择时遇到错误。数据在字段中包含字段终止符 (,),但它用双引号引起来。即使我在数据中使用默认引号,我什至尝试明确指定 FIELDQUOTE。

我的文件包含如下数据

"number", "text"
1, "one"
2, "two"
11, "one, one"
12, "one, two"

我运行的SQL如下

SELECT
    *
FROM
    OPENROWSET(
        BULK 'https://mydatalake.dfs.core.windows.net/data/test_quoted_fields.csv',
        FORMAT = 'CSV',
        PARSER_VERSION = '2.0',
        FIELDQUOTE = '"',
        FIELDTERMINATOR = ',',
        HEADER_ROW = TRUE
    ) AS [result]

错误信息如下

Error handling external file: 'Quotes '' must be inside quoted fields at [byte: 10]. '. File/External table name: 'https://mydatalake.dfs.core.windows.net/data/test_quoted_fields.csv'

请注意,我 运行 使用 Serverless/ OnDemand SQL Pool.

的查询

有人可以帮忙吗?谢谢

ADLS 门户中的数据如下所示 处​​于编辑模式

预览模式

我看来,在 excel 中包含 .csv 并在上传到 ADLS 后会在引用的字段周围添加额外的“”,以便被视为字符串。而且看起来效果不错。