我在存储过程中工作,我需要更新它的功能。
Stored proc将数据插入表并添加0标志,我们运行批处理将标志设置为1表示记录已经处理完毕。
我正在编辑存储过程以始终向特定记录插入1标志,因此它不会被处理。
代码就像这样工作
INSERT INTO [dbo].[personel]
([FirstName]
,[LastName]
,[IdNo]
,[ProcessedIndicator]
,[CreateDate]
Select AP.FirstNm
,AP.LastNm
,AP.Idno
,CASE 0
WHEN AP.Locotion = '' AND AP.Position 0001 BETWEEN AND 0005
THEN insert 1
ELSE '0'
END
,GetDate()
from dbo.AllPersonel AS AP
答案 0 :(得分:0)
您的CASE
语句有几个语法(和拼写)问题。试试这个:
CASE
WHEN AP.Location = '' AND AP.Position BETWEEN 0001 AND 0005 THEN 1
ELSE '0'
END
CASE
语句有两种形式:
CASE someExpression
WHEN someValue THEN someResult
...
ELSE someDefault
END
或
CASE
WHEN someCondition THEN someResult
...
ELSE someDefault
END
你试图混合两种形式。