Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Pourquoi la colonne WHERE =NULL ne génère-t-elle pas d'erreur dans SQL Server ?

En effet, un NULL ne peut être assimilé à aucune valeur.

Désactivez l'option ANSI_NULLS puis exécutez-la, vous verrez maintenant la ligne :

SET ANSI_NULLS OFF
select * from #foo --returns the one record we just created  
select * from #foo where colA = null --does not throw an error and does not return a record! why?? 
select * from #foo where colA is null --returns the record  drop table #foo