Bonjour tout le monde ,

J'aurais besoin de votre aide pour une requête UPDATE :

Voici mon probleme je veux faire un update sur un champ en fonction d'un autre champ :

mon cas est le suivant :

si la valeur LIGNE_EF_DESC ='Hors Groupe' alor le champ LIGNE_EF_INDEX =1
si la valeur LIGNE_EF_DESC ='CAG' alor le champ LIGNE_EF_INDEX =2
si si la valeur LIGNE_EF_DESC ='CARG' alor le champ LIGNE_EF_INDEX =3

sinon LIGNE_EF_INDEX=max(LIGNE_EF_INDEX)+1

voici mon code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
update dwh.dim_pnl_tunisie
set LIGNE_EF_INDEX=
(case LIGNE_EF_DESC when 'Hors Groupe' then 1
when 'CAG' then 2
when 'CARG' then 3
when 'Cout Transport Terrestre' then 3
 
else LIGNE_EF_INDEX=max(LIGNE_EF_INDEX)+1
end)
 
where ligne_ef_index=0

l'erreur que j'ai est la suivante : Syntaxe incorrecte vers '='

Merci pour votre aide.