Mot-clé abscent
Simo59
-
Simo59 -
Simo59 -
Bonjour,
j'essaye de mettre à jour le champs refclient mais j'ai toujours l'erreur mot-clé abscent !
Quelqu'un a t-il déjà eu ce problème? et a-t-il trouvé une solution svp?
UPDATE tmission
SET tmission.refclient = (
CASE
WHEN TMISSION.refclient ='1' THEN TMISSION.refclient = TMISSION.REFCLIENT ||' - '||TCONTRAT.REFCETEN
ELSE tmission.refclient = TCONTRAT.REFCETEN
END
where TMISSION.CN_IDCONTRAT = TCONTRAT.IDCONTRAT
and TCONTRAT.REFCETEN like 'CAMP%'
and TMISSION.refclient is not null
and LENGTH(TMISSION.REFCLIENT ||' - '||TCONTRAT.REFCETEN) <= 50
)
j'essaye de mettre à jour le champs refclient mais j'ai toujours l'erreur mot-clé abscent !
Quelqu'un a t-il déjà eu ce problème? et a-t-il trouvé une solution svp?
UPDATE tmission
SET tmission.refclient = (
CASE
WHEN TMISSION.refclient ='1' THEN TMISSION.refclient = TMISSION.REFCLIENT ||' - '||TCONTRAT.REFCETEN
ELSE tmission.refclient = TCONTRAT.REFCETEN
END
where TMISSION.CN_IDCONTRAT = TCONTRAT.IDCONTRAT
and TCONTRAT.REFCETEN like 'CAMP%'
and TMISSION.refclient is not null
and LENGTH(TMISSION.REFCLIENT ||' - '||TCONTRAT.REFCETEN) <= 50
)
1 réponse
-
Bonjour,
la ) devrait être derrière END, mais moi je ne mettrais ni ( ni ) autour du CASE
-
-
J'ai mis la ( après le end mais j'ai toujours la même erreur, j'ai eu le même résultat sans les parenthèses
UPDATE tmission
SET tmission.refclient =
CASE
WHEN TMISSION.refclient is not null THEN TMISSION.refclient = TMISSION.REFCLIENT ||' - '||TCONTRAT.REFCETEN
ELSE tmission.refclient = TCONTRAT.REFCETEN
END
where TMISSION.CN_IDCONTRAT = TCONTRAT.IDCONTRAT
and TCONTRAT.REFCETEN like 'CAMP%'
and LENGTH(TMISSION.REFCLIENT ||' - '||TCONTRAT.REFCETEN) <= 50- si c 'est un sous select
UPDATE tmission SET tmission.refclient = (select CASE WHEN TMISSION.refclient is not null THEN TMISSION.REFCLIENT ||' - '||TCONTRAT.REFCETEN ELSE TCONTRAT.REFCETEN END from TCONTrAT where TMISSION.CN_IDCONTRAT = TCONTRAT.IDCONTRAT and TCONTRAT.REFCETEN like 'CAMP%' and LENGTH(TMISSION.REFCLIENT ||' - '||TCONTRAT.REFCETEN) <= 50 )
mais les lignes de tmission exclues du where risquent une affectation à null
-