• Stephen,

    Your CASE statement results might more accurately be given as

    DECLARE @a INT, @b-2 INT

    SET @a = 0

    SELECT CASE WHEN (@a = 1 /*FALSE*/ AND @b-2 = 1 /*UNKNOWN*/) THEN 'TRUE' ELSE 'NOT TRUE' END

    The statement shows that the result of the AND operation is NOT TRUE, but it does not tell you whether it is FALSE or UNKNOWN. That's where basic logic is important in order to understand SQL Server results. =)