Select selon si le champs est vide

Résolu
Bonjour à tous,

Je cherche à renseigner une colonne avec un nom et un prénom avec soit un concat venant d'une table, soit, si le précédent est vide (il n'est pas null), renseigner avec un champs qui possède déjà le nom-prénom mais qui n'est pas forcement fiable

un exemple de ce que j'ai en tète sera peut-être plus clair. (Un truc du genre ISNULL pour champs vide m'irait bien)

SELECT ISVIDE(concat(User.Nom," ",User.Prenom),Info.NomPrenom) FROM Info
INNER JOIN User ON Info.id = User.id


Voila mon souci.

Si vous avez une idée, je prend, même des truc un peu compliqué, je me débrouillerai pour adapter à mon code.
Merci !!

1 réponse

  1. Modérateur
    Bonjour,

    ISNULL pour les valeurs null
    ="" pour les champs "vides"

    1
    1. Merci mais soit cette réponse est à coté de la plaque soit j'aurai besoin d'un peu d'explication sur comment remplacer une chaine de caractère par une autre si la première est vide avec cette information.
      Dans le cas d'un where, ça marche mais ça ne remplace pas mes valeurs dans le select.
      0
    2. Modérateur
      La réponse n'est pas à côté de la plage.... c'est l'auteur de la question qui ne semble pas connaitre le fonctionnement des requêtes SQL.
      D'ailleurs.. il serait bien de nous préciser avec quel SGBD tu bosses... car les instructions peuvent varier selon que tu sois en ORACLE, en ACCESS, en Mysql, en PostgreSql ou en sqlserver...

      Histoire de compléter ma réponse..sache qu'en SQL il existe la fonction IF
      Que cette fonction peut être utilisée aussi bien dans un WHERE que dans la partie "SELECT" de ta requête
      Que tu peux ensuite utiliser des CONDITIONS (pour voir si ta chaine est vide ou Null) et en fonction.. choisir d'affciher telle ou telle données (ou colonne...)
      0
    3. Nickel, le IF a fais son travail!!

      Merci pour la réponse.
      0