Bonjour,

Dans une requete sql j'ai une commande qui permet de modifier les valeurs d'une colonne en fonction des valeurs:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
decode(substr(X_AV_ID,1,3)  
,'ECU','eCom'  
, decode(aven.lib, 'eCom', 'eCom','Autre')) flag,
Cela fait bien le travail demandé.

Mais depuis je souhaite ajouter une nouvelle condition de modification, le problème qui se pose ici c'est que je veux tester la présence d'une chaine de caractères dans les valeurs, ce qui est vérifiable via la commande like.
Le like ne fonctionne pas avec la fonction decode d'après mes recherches.

Je suis passé au CASE WHEN, mais ici mon souci c'est que je ne peux pas récupérer l'ensemble des valeurs, alors qu'avec le decode cela était possible.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
(select  Case  
                                When substr(X_AV_ID,1,3) = 'ECU' OR aven.lib = 'eCom' Then 'eCom'
                                When aven.lib Like '%Extra%' Then 'extra'
                                Else 'Autre'
                                End 
                        From table_x aven   
                    )flag,

Merci pour votre aide!

Naoufel