Bonjour à tous!
Je suis en train de créer un trigger qui permet de générer un champ en concaténant 3 autres champs et un incrément qui indique le nombre d'éléments existants déjà pour un champ donné.
Le trigger fonctionne bien sauf quand le count(*) retourne.... rien.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 BEGIN DECLARE nb INT; SET nb = (SELECT IFNULL(count(*),0) FROM `VPLS_aggregation` WHERE `id_ORT` = NEW.`id_ORT` GROUP BY `id_ORT`); SET NEW.`VPLS_ID_aggregation` = CONCAT("21188", LPAD(NEW.`id_ORT`,2,0), LPAD(nb,2,0)); END
En effet, le count() ne retourne pas 0 s'il ne trouve aucune ligne....
PI: J'ai essayé en créant une "self" jointure en vain...
Comment contourner ce problème?
Merci à vous!
Partager