SELECT CONCAT('a','foo',null,'bar');
donne NULL parce que c'est son comportement normal.
Si toutefois on désire avoir un retour avec les NULL considérés comme chaînes vides une autre fonction viendra à notre secours.
On utilisera CONCAT_WS de manière détournée.
Pour rappel cette fonction utilise le premier argument comme séparateur et ignore les NULL
Donc
SELECT CONCAT_WS('foo','a','b','c');
donne afoobfooc
Mais surtout
SELECT CONCAT_WS('foo','a',null,'b','c');
donne aussi afoobfooc
donc
SELECT CONCAT_WS('', 'a','foo',null,'bar');
donnera le afoobar espéré








Commentaires
Aucun commentaire pour le moment.
Ajouter un commentaire