Précédent   Forum des professionnels en informatique > Bases de données > Firebird > SQL
SQL Forum d'entraide sur le SQL pour Firebird
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 27/10/2011, 11h31   #1
Membre habitué
 
Inscription : mai 2007
Messages : 691
Détails du profil
Informations personnelles :
Âge : 47

Informations forums :
Inscription : mai 2007
Messages : 691
Points : 146
Points : 146
Par défaut concatenation avec des Null

bonjour,

Lorsque l'on concatène des valeurs chaines , et qu'une de ces valeurs est NULL, alors le résultat est NULL.

Voici ma question:
j'ai récupéré une base foxpro dans laquelle il y a une table 'employés'.
le problème est que certain prénom sont NULL
résultat lorsque je fais:
Code :
1
2
 
SELECT employe.prenom || ' ' || employe.nom AS patronyme , ....
Ca me renvoie la valeur NULL

pour solutionner, la première idée qui me vient est de mettre 1 caractère dans le champ prenom (un point , un slash , une étoile ?)

mais est ce qu'il y a un autre moyen de resoudre ce problème en passant directemement par le language sql

cordialement
looping est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/10/2011, 12h42   #2
Expert Confirmé

 
Homme Philippe Makowski
Consultant spécialité Firebird
Inscription : mai 2002
Messages : 2 213
Détails du profil
Informations personnelles :
Nom : Homme Philippe Makowski
Âge : 49
Localisation : France

Informations professionnelles :
Activité : Consultant spécialité Firebird
Secteur : Conseil

Informations forums :
Inscription : mai 2002
Messages : 2 213
Points : 3 315
Points : 3 315
COALESCE

http://www.firebirdsql.org/file/docu...nversions.html
__________________
Philippe Makowski
IBPhoenix - Firebird
Membre de l'April
makowski est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/10/2011, 16h07   #3
Modérateur
 
Avatar de SergioMaster
 
Serge Girard
Développeur informatique
Inscription : janvier 2007
Messages : 3 617
Détails du profil
Informations personnelles :
Nom : Serge Girard
Âge : 55
Localisation : France

Informations professionnelles :
Activité : Développeur informatique
Secteur : Industrie

Informations forums :
Inscription : janvier 2007
Messages : 3 617
Points : 4 522
Points : 4 522
Avec un petit TRIM en prime pour enlever les espaces

Code :
1
2
 
SELECT TRIM(COALESCE(employe.prenom,' ') || ' ' || employe.nom) AS patronyme , ....
c'est encore plus beau
__________________
La seule chose absolue dans un monde comme le nôtre, c'est l'humour. » Albert Einstein
J'entends et j'oublie. Je vois et je me souviens. Je fais et je comprends . Confucius
SergioMaster est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/10/2011, 21h44   #4
Membre habitué
 
Inscription : mai 2007
Messages : 691
Détails du profil
Informations personnelles :
Âge : 47

Informations forums :
Inscription : mai 2007
Messages : 691
Points : 146
Points : 146
bonsoir,

super cette fonction COALESCE

je ne connaissais pas du tout

merci pour votre aide

A+
looping est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 05h40.


 
 
 
 
Partenaires

Hébergement Web