Comment afficher une note si une ligne n'existe pas? server SQL

Je veux afficher tous les numéros de téléphone de mon customer(Customertable) .

Mais s'il n'y a pas de numéro de téléphone parce que le client n'en a pas laissé, je veux afficher une note disant "Aucun numéro de téléphone".

Je l'ai essayé avec la command

 Select phonenumber From Customers if phonenumber is NUll RAISEERROR 'No phonenumber' -error 

Mais j'ai une erreur:

"Phonenumber" n'est pas un nom de colonne valide

et je suppose que RAISEERROR n'est pas aussi la bonne façon d'afficher une note (?!)

S'il vous plaît aider

Désolé pour un mauvais anglais.

Pourquoi ne pas simplement utiliser coalesce pour returnner la première valeur non nulle?

 SELECT COALESCE(phonenumber, 'no phone number') FROM customers 

RAISEEROR semble plutôt brutal.

Vous pourriez faire quelque chose comme ceci:

 SELECT COALESCE(MAX(phonenumber), 'No phonenumber') FROM Customers WHERE CustomerId = @CustomerId; 

Le but de MAX() est de returnner une seule ligne pour un client donné.

Cependant, ce type de logique doit être au niveau de la couche d'application et probablement pas embedded dans la requête.

Vous pouvez essayer ceci, je ne sais pas ce que vous voulez dire par là, il n'y a pas de numéro de téléphone, cela peut être nul ou un caractère vide, donc c'est mon truc:

 Select case when phonenumber is null or phonenumber ="" then 'No phonenumber' else phonenumber end FROM Customers 

Vous pouvez utiliser la fonction ISNULL

ISNULL (check_expression, rlocation_value)

Veuillez find la description sur MSDN

J'espère que cela t'aidera

 SELECT ISNULL(phonenumber, 'no phone number') FROM customers