在CASE WHEN中插入语句

时间:2018-01-04 09:09:30

标签: sql-server

如何在CASE WHEN语句中使用INSERT语句?

以下是示例代码:

    select case when SOME_CONDITION then 
    (insert into TABLE2(column1,column2) select * from TABLE1 end)
    from TABLE1

2 个答案:

答案 0 :(得分:2)

您应该将限制逻辑应用于WHERE

SELECT子句
INSERT INTO TABLE2 (column1, column2)
SELECT * FROM TABLE1
WHERE <some condition>;

根据WHERE子句的逻辑,只会将某些记录作为插入目标。

答案 1 :(得分:0)

您的基本语句是插入从其他表中选择的表 如果我确实理解你的问题,基于案例选择陈述!

你可以尝试使用这个查询来操纵它,即使我不是真正的粉丝

尝试了解您需要做什么,并将其转发到SQL语言addaptable

最大的工作是了解你想要的东西并将其转换为SQL服务器理解的SQL语句

with CTP as (select * 
             from table1 
             where <'the condition that you want on the case statement'>
            )

    insert into TABLE2(column1,column2)
        select column1,column2 
        from table1
        where id in (select id from CTP)