NULL
. के साथ एकमात्र मान्य तुलना संचालन मान हैं IS NULL
या IS NOT NULL
, अन्य हमेशा झूठी वापसी करते हैं (वास्तव में - अज्ञात, @Damien_The_Unbeliever की टिप्पणी देखें)
तो, निम्न प्रयास करें
CREATE TYPE [dbo].[BitType] AS TABLE(
[B] [tinyint] NOT NULL
)
GO
declare @theBitTypeTable BitType
insert @theBitTypeTable
VALUES(0), (2 /* instead of NULL*/)
SELECT something FROM theTable WHERE IsNull(cast(item as tinyint), 2) IN (select B from @theBitTypeTable)