17 septembre 2008

Requête DECODE pour moins de code...

Je ne découvre seulement qu'aujourd'hui l'instruction SQL DECODE. C'est un intérêt du développement on en apprend tous les jours !

L'instruction SQL DECODE est très pratique, elle permet de formater une information directement dans le résultat d'une requête SQL, afin d'éviter de la programmation lors de la lecture de la requête pour présenter les données. Exemple typique d'une civilité stockée avec 1, 2 ou 3 dans une base de données, on pourra grâce à DECODE obtenir directement dans le résultat de la requête "M.", "Mme" ou "Mlle". Exemple :

SELECT
DECODE(CLIENT.Civilité ,1,'M. ',2,'Mme. ',3,'Melle ','') +' '+
CLIENT.NomClient +' '+CLIENT.PrénomClient AS NomComplet
FROM
CLIENT

3 commentaires:

Unknown a dit…

Je ne connaissais pas non plus l'instruction DECODE. J'aurais mis dans ce cas IF/THEN/ELSE ;)
Merci pour cette information
Vince
http://vroy1.free.fr

Anonyme a dit…

Pb en hf c/s ...
Serveur retourne erreur comme quoi la procedure stockée DECODE n'a pas été trouvée ???

Anonyme a dit…

Pour info, en SQL, il existe l'instruction CASE :

select
NOCLI,
case CVCLI
when 1 then "M."
when 2 then "Mme"
when 3 then "Mlle"
else ''
end as LBCIVCLI,
NMCLI, PRCLI,
from
CLI_CLIENT
;