gpt4 book ai didi

external-tables - Azure Synapse - 字符串分隔符

转载 作者:行者123 更新时间:2023-12-04 04:15:18 25 4
gpt4 key购买 nike

我有一个具有以下格式的文本文件。

"01|""样本""|""测试"|""测试""|""01"|"""".

我通过将格式选项 STRING_DELIMITER 设置为 '"' 在 Azure Synapse 中创建了一个外部表。但是在通过 sp 处理文件时,我收到了下面给出的错误。

“在字符串定界符后找不到定界符”

有什么解决办法吗?任何帮助将不胜感激。

问候,桑迪普

最佳答案

在我使用该示例字符串进行的测试中,引号引起了问题,因为它们太不均匀了。您最好创建忽略引号并在之后清理它们的外部表,例如像这样设置您的外部文件格式:

CREATE EXTERNAL FILE FORMAT ff_pipeFileFormat
WITH (
FORMAT_TYPE = DELIMITEDTEXT,
FORMAT_OPTIONS (
FIELD_TERMINATOR = '|',
--STRING_DELIMITER = '"', -- removed
USE_TYPE_DEFAULT = FALSE
)
);

使用 REPLACE 清除引号,例如:

SELECT 
REPLACE( a, '"', '' ) a,
REPLACE( b, '"', '' ) b,
REPLACE( c, '"', '' ) c,
REPLACE( d, '"', '' ) d,
REPLACE( e, '"', '' ) e,
REPLACE( f, '"', '' ) f
FROM dbo.yourTable

我的结果:

My results

关于external-tables - Azure Synapse - 字符串分隔符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60813776/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com