where cincdefine1<>'FD' or cincdefine1 is null

解决方案 »

  1.   

    where isnull(cincdefine1,'') <>'FD'
      

  2.   

    select * from A where isnull(cinvdefine1,'') <>'FD' 
      

  3.   


    select * from A where cinvdefine1 <>'FD' or cinvdefine1 is null
      

  4.   

    比较空值时必须小心。比较行为取决于 SET ANSI_NULLS 选项的设置。当 SET ANSI_NULLS 为 ON 时,如果比较中有一个或多个表达式为 NULL,则既不输出 TRUE 也不输出 FALSE,而是输出 UNKNOWN。这是因为未知值不能与其他任何值进行逻辑比较。这种情况发生在一个表达式与 NULL 单词进行比较,或者两个表达式相比,而其中一个表达式取值为 NULL 时。例如,当 ANSI_NULLS 为 ON 时,以下比较总是生成 UNKNOWN
      

  5.   

    select * from A where isnull(cinvdefine1,'') <>'FD' 
      

  6.   


    select * from A where cinvdefine1 <>'FD' or cinvdefine1 is null