我在自动化作业中使用此代码,一旦它出现在此代码上,作业就失败了但是如果我手动运行它就会完美。有没有其他方法来写这个或有任何错误。
UPDATE ABC_FACT
SET ID = CASE WHEN (PRODUCT_NAME LIKE '%ETH LE%' or PRODUCT_NAME LIKE '% SOUND %' OR PRODUCT_NAME LIKE '%NET REV%' or PRODUCT_NAME LIKE '%ETHERNET SPOKE%')
THEN ORDER_NO + (SUBSTRING(ORDER,1,CHARINDEX('/',ORDER)-1)) + C_TYPE
ELSE ORDER_NO + ORDER + C_TYPE END
WHERE FLAG LIKE 'ABC%'
请帮忙。
答案 0 :(得分:0)
试试这个
UPDATE ABC_FACT
SET ID = CASE WHEN (PRODUCT_NAME LIKE '%ETH LE%' or PRODUCT_NAME LIKE '% SOUND %' OR PRODUCT_NAME LIKE '%NET REV%' or PRODUCT_NAME LIKE '%ETHERNET SPOKE%')
THEN ORDER_NO + (SUBSTRING([ORDER],1,CHARINDEX('/',[ORDER])-1)) + C_TYPE
ELSE ORDER_NO + [ORDER] + C_TYPE END
WHERE FLAG LIKE 'ABC%'
订单是SQL中的保留字,每当使用保留字作为列使用[]时,我建议不要使用保留字作为列名,你可以像之前使用_或者用其他词组合< / p>
有关SQL Server保留字的列表,请访问https://docs.microsoft.com/en-us/sql/t-sql/language-elements/reserved-keywords-transact-sql