|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre à l'essai
![]() Inscription : janvier 2006 Messages : 120 ![]() |
Bonjour,
Je me permets de poster un message sur le forum car j'aurais besoin d'un peu d'aide. Je suis sous Oracle 10g et je souhaiterais exclure dans l'affichage de mes résultats une partie de la chaine de caractère sachant que celle ci est variable. Je voudrais que celle ci s'arrête dès que l'on trouve la chaine de caractères COD. Je ne vois pas comment jeux peut faire en Sql. TABLE : ID | COMMENTAIRE =============== 1 | Server : P.Walcot.COD M-50 2 | Server : Br.Sentenza.COD M-60 3 | Server : Gr.BoileauCOD M-70 Le résultat que je voudrais serait de la forme : Server : P.Walcot. Server : Br.Sentenza. Server : Gr.Boileau En espérant avoir des réponses. Merci. |
|
|
00
|
|
|
#2 |
![]() ![]() |
Il faut combiner les fonctions SUBSTR et INSTR.
Cette dernière permet de rechercher la position d'une chaîne dans une autre, et la première d'extraire une partie de chaîne en précisant position de départ et longueur. Essayez de trouver par vous-même, proposez-nous vos solutions !
__________________
Email : http://scr.im/waldar |
|
00
|
|
|
#3 |
|
Membre Expert
![]() Philippe CHIRCOPChef de projet Inscription : juin 2007 Messages : 1 109 ![]() |
Voir aussi du coté des expression régulières (REGEXP) !
__________________
Garuda गरूड Brahmâ la Guerre et Vishnu la Paix Oracle 10.2.0.4 - Forms6i patch 17 - Toad 11.1 - sharePoint 2010 |
|
|
00
|
|
|
#4 |
|
Expert Confirmé Sénior
![]() Inscription : juillet 2003 Messages : 3 437 ![]() |
Je ne suis pas sur que les expressions régulières soient adaptées au besoin, c'est sortir l'artillerie lourde pour ce cas !
__________________
More Code : More Bugs. Less Code : Less Bugs |
|
|
00
|
|
|
#5 |
![]() ![]() |
Ça fonctionnera aussi, mais c'est sortir le bazooka pour tuer un moustique
__________________
Email : http://scr.im/waldar |
|
00
|
|
|
#6 |
|
Membre Expert
![]() Philippe CHIRCOPChef de projet Inscription : juin 2007 Messages : 1 109 ![]() |
C'est juste pour montrer que ca existe aussi, si le besoin se compliquait !
__________________
Garuda गरूड Brahmâ la Guerre et Vishnu la Paix Oracle 10.2.0.4 - Forms6i patch 17 - Toad 11.1 - sharePoint 2010 |
|
|
00
|
|
|
#7 |
|
Membre du Club
![]() ACInscription : octobre 2010 Messages : 28 ![]() |
Vous pouvez également étudier la fonction REPLACE.
Code :
SELECT REPLACE('Server : P.Walcot.COD M-50','COD M-50','') FROM dual; |
|
|
00
|
|
|
#8 |
|
Expert Confirmé Sénior
![]() ![]() Marius NituIngénieur développement logiciels Inscription : octobre 2007 Messages : 3 311 ![]() |
@wahnfried
J’ai peur que votre solution n’est pas vraiment adaptée pour ce cas, la partie à remplacer pouvant varier d'une ligne à une autre. |
|
|
00
|
|
|
#9 | ||
|
Membre à l'essai
![]() Inscription : janvier 2006 Messages : 120 ![]() |
Bonjour à tous,
Merci pour vos réponses. Je suis parti sur la solution SUBSTR et INSTR qui est opérationnelle. J'y suis arrivé. PAr contre, mon autre problème c'est que je voudrais faire un count des Id et les regrouper par COMMENTAIRE. Le problème c'est que ça ne marche pas, je n'ai pas de regroupement. Je mets ma requête ci-dessous : Code :
ResId | COMMENTAIRE 1 | Server : P.Walcot 1 | Server : P.Walcot 1 | Server : P.Walcot 1 | Server : Br.Sentenza. au lieu de : ResId | COMMENTAIRE 3 | Server : P.Walcot 1 | Server : Br.Sentenza. Auriez vous une idée ?? Merci. |
||
|
|
00
|
|
|
#10 | ||||
|
Membre Expert
![]() Philippe CHIRCOPChef de projet Inscription : juin 2007 Messages : 1 109 ![]() |
deja
Code :
Code :
__________________
Garuda गरूड Brahmâ la Guerre et Vishnu la Paix Oracle 10.2.0.4 - Forms6i patch 17 - Toad 11.1 - sharePoint 2010 |
||||
|
|
00
|
|
|
#11 |
|
Expert Confirmé Sénior
![]() Inscription : juillet 2003 Messages : 3 437 ![]() |
Ne pas grouper par ID, sinon, il y aura toujours une ligne par ID.
Code :
GROUP BY substr(RES.CMT,0,instr(RES.CMT,CHR(10)))
__________________
More Code : More Bugs. Less Code : Less Bugs |
|
|
10
|
|
|
#12 |
|
Membre du Club
![]() ACInscription : octobre 2010 Messages : 28 ![]() |
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com