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

Clause T-SQL CASE :problème lors de la spécification de WHEN NULL avec un Outer JOIN

Essayez d'utiliser ISNULL

Je suis à peu près sûr que la raison en est que lorsque vous comparez IS NULL à NULL, le résultat est NULL, donc False, d'où la raison pour laquelle il évalue votre ELSE 1

SELECT c.customerID, o.OrderID, CASE When ISNULL(o.OrderID, 0) = 0 Then 0 Else 
1 End as YesNO
FROM Customers c
LEFT JOIN Orders o
 ON c.customerID = o.customerID