Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Wie überprüfe ich, ob eine SQL-Serverzeichenfolge null oder leer ist?

Ich denke das:

SELECT 
  ISNULL(NULLIF(listing.Offer_Text, ''), company.Offer_Text) AS Offer_Text
FROM ...

ist die eleganteste Lösung.

Und um es ein bisschen in Pseudocode aufzuschlüsseln:

// a) NULLIF:
if (listing.Offer_Text == '')
  temp := null;
else
  temp := listing.Offer_Text; // may now be null or non-null, but not ''
// b) ISNULL:
if (temp is null)
  result := true;
else
  result := false;