Sql server 带in子句的case语句

Sql server 带in子句的case语句,sql-server,tsql,Sql Server,Tsql,我有一个分区表,共有6个分区。我想根据节插入不同的状态。因此,基本上,如果Sectionid=1,2,5,6,那么状态将插入1。如果section为3,4,那么状态将插入0。我需要这个来插入所有6个部分的状态。我试着使用案例陈述,但不起作用 表:部分: sectionkey int sectionint int sectionkey sectionint 1 1 2 2 3 3 4

我有一个分区表,共有6个分区。我想根据节插入不同的状态。因此,基本上,如果Sectionid=1,2,5,6,那么状态将插入1。如果section为3,4,那么状态将插入0。我需要这个来插入所有6个部分的状态。我试着使用案例陈述,但不起作用

表:
部分

sectionkey int
sectionint int

sectionkey  sectionint
   1            1
   2            2
   3            3
   4            4
状态

statuskey int
statusint int
sectionint int
期望输出:

    statuskey  statusint sectionint
      1            0          1
      2            0          2
      3            1          3
      4            1          4
我希望能够将第1节和第2节插入到状态表中,使状态为0,但也可以将第3节和第4节插入到状态表中,但使它们的状态在一条语句中等于1

   DECLARE @SECTION int
   DECLARE @STATUS int
   --SET @SECTIONID = (SELECT SECTIONID FROM Section)

   SELECT CASE @STATUS 
   WHEN (SELECT SECTIONID FROM Section WHERE SECTIONID IN(1,2,5,6)) THEN '0' ELSE WHEN (SELECT SECTIONID FROM Section WHERE SECTIONID IN(3,4)) THEN '1' END END
   BEGIN
   INSERT INTO Checklist ("SECTIONID", "STATUS", "USERID")
   SELECT s.SECTIONID,@STATUS, @USER
   FROM SECTION as s 
   END

请提供一些示例数据和所需输出。(请参阅如何添加一些。)其他模式信息以及您尝试失败的地方也将有助于我们更好地帮助您。Dan我编辑了我的问题,以包括您要求的信息。如果这样做的话,我的陈述整体上也失败了。我明白它为什么会失败,只是不知道如何修复它。谢谢
insert into Checklist("SECTIONID","STATUS","USERID")
    (select SECTIONID, (case when SECTIONID in(1,2,5,6) Then 0 Else 1 END), @USER
    from Section)