Tsql 我可以在一个封闭的窗口中使用NULL吗?

Tsql 我可以在一个封闭的窗口中使用NULL吗?,tsql,Tsql,如何将空字符串和null添加到括号中的值列表中。我认为对于空的只是添加“”,但是对于空的,我不太确定 UPDATE ProjectsActiveNotes SET NoteTypeID = 1 ,NoteType = 'USER - CLIENT' WHERE NoteCategory = 'Client' AND NoteSubCategory IN ( '' ,'Delivery' ,'Estim

如何将空字符串和null添加到括号中的值列表中。我认为对于空的只是添加“”,但是对于空的,我不太确定

UPDATE ProjectsActiveNotes
SET    NoteTypeID = 1
      ,NoteType = 'USER - CLIENT'
WHERE  NoteCategory = 'Client' AND
       NoteSubCategory IN
       (
        ''
        ,'Delivery'
        ,'Estimate'
        ,'Invoicing'
        ,'Placement'       
       )
GO
感谢您的帮助

您不能在中使用NULL,但可以将其添加到WHERE子句中

UPDATE ProjectsActiveNotes
SET    NoteTypeID = 1
      ,NoteType = 'USER - CLIENT'
WHERE  NoteCategory = 'Client' AND
       (NoteSubCategory IN
       (
        ''
        ,'Delivery'
        ,'Estimate'
        ,'Invoicing'
        ,'Placement'       
       ) or NoteSubCategory is null)
GO    
在中不能使用NULL,但可以将其添加到WHERE子句中

UPDATE ProjectsActiveNotes
SET    NoteTypeID = 1
      ,NoteType = 'USER - CLIENT'
WHERE  NoteCategory = 'Client' AND
       (NoteSubCategory IN
       (
        ''
        ,'Delivery'
        ,'Estimate'
        ,'Invoicing'
        ,'Placement'       
       ) or NoteSubCategory is null)
GO    
用这个

UPDATE  ProjectsActiveNotes
SET     NoteTypeID = 1 ,
        NoteType = 'USER - CLIENT'
WHERE   NoteCategory = 'Client'
        AND COALESCE(NoteSubCategory, '') IN ( '', 'Delivery', 'Estimate',
                                               'Invoicing', 'Placement' )
用这个

UPDATE  ProjectsActiveNotes
SET     NoteTypeID = 1 ,
        NoteType = 'USER - CLIENT'
WHERE   NoteCategory = 'Client'
        AND COALESCE(NoteSubCategory, '') IN ( '', 'Delivery', 'Estimate',
                                               'Invoicing', 'Placement' )

另一种方法是使用
ISNULL

UPDATE ProjectsActiveNotes
SET    NoteTypeID = 1
      ,NoteType = 'USER - CLIENT'
WHERE  NoteCategory = 'Client' AND
       ISNULL(NoteSubCategory,'') IN
       (
        ''
        ,'Delivery'
        ,'Estimate'
        ,'Invoicing'
        ,'Placement'       
       )
GO

另一种方法是使用
ISNULL

UPDATE ProjectsActiveNotes
SET    NoteTypeID = 1
      ,NoteType = 'USER - CLIENT'
WHERE  NoteCategory = 'Client' AND
       ISNULL(NoteSubCategory,'') IN
       (
        ''
        ,'Delivery'
        ,'Estimate'
        ,'Invoicing'
        ,'Placement'       
       )
GO