使用下面的代码,我试图将数据从这段代码复制到一个专用表中。数据来自一个Parquet,在将其加载到表中之前,我需要修改它。我得到了以下错误。
目标移动InvItemDist到DP的操作失败:“源”端发生故障。'Type=Microsoft.DataTransfer.Common.Shared.HybridDeliveryException,Message=A数据库操作失败,出现以下错误:“格式附近的语法错误”、Source=、“Type=System.Data.SqlClient-SqlException、Message=Incorrect语法接近”FORMAT.、Source=.Net SqlClient数据提供程序、SqlErrorNumber=102、Class=15、ErrorCode=-2146232060、State=1、Errors={Class=15、Number=102、State=1、Message=Incorrect语法接近“FORMAT”、},
代码:
SELECT
A.[NDC]
, A.[ProductID]
, A.[Customer_Site]
, A.[ZipFileName]
FROM
(
SELECT
DISTINCT
[NDC]
, [ProductID]
, [Customer_Site]
, LEFT
(
SUBSTRING([ZipFileName], NULLIF(CHARINDEX('-', [ZipFileName], NULLIF(CHARINDEX('-', [ZipFileName]), 0) + 1), 0) + 1, LEN([ZipFileName]))
, LEN(SUBSTRING([ZipFileName], NULLIF(CHARINDEX('-', [ZipFileName], NULLIF(CHARINDEX('-', [ZipFileName]), 0) + 1), 0) + 1, LEN([ZipFileName]))) - 4
) AS [ZileFileOrder]
, [ZipFileName]
, ROW_NUMBER() OVER (PARTITION BY [NDC], [ProductID], [Customer_Site]
ORDER BY LEFT
(
SUBSTRING([ZipFileName], NULLIF(CHARINDEX('-', [ZipFileName], NULLIF(CHARINDEX('-', [ZipFileName]), 0) + 1), 0) + 1, LEN([ZipFileName]))
, LEN(SUBSTRING([ZipFileName], NULLIF(CHARINDEX('-', [ZipFileName], NULLIF(CHARINDEX('-', [ZipFileName]), 0) + 1), 0) + 1, LEN([ZipFileName]))) - 4
) DESC) AS UN
FROM
OPENROWSET(
BULK 'https://stonexiacctolleson3154ba.dfs.core.windows.net/fs-tolleson/InvItemDist - Fact/2022/06/15/*.parquet',
FORMAT = 'PARQUET'
) AS [result]
) AS A
WHERE A.[UN] = 1发布于 2022-06-27 12:42:44
https://stackoverflow.com/questions/72770844
复制相似问题