Sql server 使用case条件插入到表中
我有一个表,在这个表中,我必须检查列'Type'是否包含数据值'V',然后我必须将其插入为'F',否则没有任何更改 我正在使用下面的,并得到一个错误作为不正确的语法附近的情况Sql server 使用case条件插入到表中,sql-server,stored-procedures,Sql Server,Stored Procedures,我有一个表,在这个表中,我必须检查列'Type'是否包含数据值'V',然后我必须将其插入为'F',否则没有任何更改 我正在使用下面的,并得到一个错误作为不正确的语法附近的情况 INSERT INTO [dbo].[Table] ([A] ,[B], [C],[D] , CASE [Type] WHEN 'F'THEN 'V' else [Type] as Service type,[E]) select ([A] ,[B],
INSERT INTO [dbo].[Table]
([A] ,[B],
[C],[D] , CASE [Type] WHEN 'F'THEN 'V' else [Type] as Service type,[E]) select ([A] ,[B],
[C],[D] ,[Type],[E] from [dbo].[Table2]
您的insert语句出现错误,请按照下面的
case
expression进行更正
INSERT INTO [dbo].[Table] ([A], [B], [C], [D], [Type], [E])
SELECT [A], [B], [C], [D],
CASE [Type] WHEN 'V'THEN 'F' else [Type] end [Type],[E]
FROM [dbo].[Table2];
在这里,您有效地混合了使用
SELECT
和INSERT
语句以及使用值的语法。
INSERT INTO [dbo].[Table] ([A], [B], [C], [D], [Type], [E])
SELECT [A], [B], [C], [D],
CASE [Type] WHEN 'V'THEN 'F' else [Type] end [Type],[E]
FROM [dbo].[Table2];