|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité régulier
![]() Inscription : février 2007 Messages : 47 ![]() |
Bonjour a tous,
Je fais des extractions de donnees sur une base oracle... je veux extraire un champs chaine de caractere qui à l'origine est un varchar(100) mais les chaines de caracteres dans ce champs en general n'atteignent pas 100...mais quand je fais mon extraction il extrait les 100 de telle sorte qu'il y a assez de blanc...je voudrais extraire la chaine de caracteres selon sa taille, si elle est de 10 meme si elle a ete déclare varchar(100), je veux extraire exactement les 10 et non 100 avec avec du blanc pour remplir les 100.... Jespere avoir bien expliqué ma situation, merci par avance. |
|
|
00
|
|
|
#2 |
![]() ![]() ![]() Inscription : mai 2003 Messages : 6 533 ![]() |
Extraction avec quel outil ?
__________________
Rédacteur Oracle (Oracle ACE) Guide Oracle ,Guide PL/SQL, Guide Forms 9i/10g, Index de recherche Je ne réponds pas aux questions techniques par MP Blogs: Forms-PL/SQL-J2EE - Forms Java Beans |
|
|
00
|
|
|
#3 | ||
|
Membre Expert
![]() Philippe CHIRCOPChef de projet Inscription : juin 2007 Messages : 1 109 ![]() |
1) passe ton champ en varchar2
si tu ne peux pas faire une modif de structure Code :
__________________
Garuda गरूड Brahmâ la Guerre et Vishnu la Paix Oracle 10.2.0.4 - Forms6i patch 17 - Toad 11.1 - sharePoint 2010 |
||
|
|
00
|
|
|
#4 |
|
Invité régulier
![]() Inscription : février 2007 Messages : 47 ![]() |
Merci a tous,
je fais les extractions avec sqlplus sous dos de windows... malheureusement je ne peux pas changer la structure du champs en varchar2 comme indiqué...j'ai utilisé rtrim mais c toujours la meme chose je ne sais pas trop pourquoi... Merci |
|
|
00
|
|
|
#5 |
|
Expert Confirmé
![]() Chef de projet en SSII Inscription : janvier 2004 Messages : 2 866 ![]() |
Si tu nous indiquais ce que tu fais et mieux encore un exemple de ce que tu veux obtenir, nos réponses seraient sans aucun doute plus pertinentes que si on doit deviner...
__________________
Un problème sans solution est un problème mal posé Merci de poser vos questions sur le forum, je ne réponds pas aux questions posées par MP. |
|
|
00
|
|
|
#6 | |
|
Membre Expert
![]() Philippe CHIRCOPChef de projet Inscription : juin 2007 Messages : 1 109 ![]() |
Citation:
Sql*plus reserve le nb de caractères maximum pour afficher la colonne (cad 100 caractères) !
__________________
Garuda गरूड Brahmâ la Guerre et Vishnu la Paix Oracle 10.2.0.4 - Forms6i patch 17 - Toad 11.1 - sharePoint 2010 |
|
|
|
00
|
|
|
#7 |
|
Membre Expert
![]() Philippe CHIRCOPChef de projet Inscription : juin 2007 Messages : 1 109 ![]() |
voir discussion similaire
Oui , d'accord, c'est sur des formats de nombre, mais y'a matière...
__________________
Garuda गरूड Brahmâ la Guerre et Vishnu la Paix Oracle 10.2.0.4 - Forms6i patch 17 - Toad 11.1 - sharePoint 2010 |
|
|
00
|
|
|
#8 |
|
Invité régulier
![]() Inscription : février 2007 Messages : 47 ![]() |
Merci a tous,
jai par exemple un champs libelle dune table avec libelle = "forum develloppement oracle" moi je veux extraire effectivement "forum develloppement oracle" mais l'extraction me donne "forum develloppement oracle bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb" b pour dire blanc; c' normal car c varchar2(100) mais je cherche un myen d'extraire exactement la chaine de caracteres sans blanc apres... j'espere avoir été plus claire...merci par avance. |
|
|
00
|
|
|
#9 |
|
Membre Expert
![]() Philippe CHIRCOPChef de projet Inscription : juin 2007 Messages : 1 109 ![]() |
__________________
Garuda गरूड Brahmâ la Guerre et Vishnu la Paix Oracle 10.2.0.4 - Forms6i patch 17 - Toad 11.1 - sharePoint 2010 |
|
|
00
|
|
|
#10 |
|
Invité régulier
![]() Inscription : février 2007 Messages : 47 ![]() |
Merci a tous,
ma requete ressemble à celle ci-dessous que j'execute avec sqlplus sous dos le champs dont je parlais est le a.libelle sqlplus user/password@chainedeconnexion @requete set head off; set pagesize 0; set linesize 2000; set numwidth 50; set feedback off; set colsep '|'; spool mvtncghr select b.nc,c.klib,a.tcom,b.nommo,b.devuoi,a.datyou,a.dddatgal,a.mnt,a.libelle,a.egb,a.lpi from ligt a,risp b,libt c where a.tcom = b.tcom and b.nc = c.nc and b.nc in ('741331100','3388522500','4125332600','417379100') and a.datyou between to_date('01'||'01'||to_char((select roit from detat),'yyyy'),'dd/mm/yyyy') and (select roit from detat); spool off; exit; |
|
|
00
|
|
|
#11 |
|
Expert Confirmé
![]() Chef de projet en SSII Inscription : janvier 2004 Messages : 2 866 ![]() |
Merci de penser à utiliser les balises codes
Tu peux faire un substr sur ta colonne avec le nombre de caractères max que tu veux afficher.
__________________
Un problème sans solution est un problème mal posé Merci de poser vos questions sur le forum, je ne réponds pas aux questions posées par MP. |
|
|
00
|
|
|
#12 | ||
|
Membre Expert
![]() Philippe CHIRCOPChef de projet Inscription : juin 2007 Messages : 1 109 ![]() |
Quelques astuces
- Pour prendre le 1 jour de l'année d'une date faire TRUNC(date,'YYYY') - mettre detat dans le from Code :
__________________
Garuda गरूड Brahmâ la Guerre et Vishnu la Paix Oracle 10.2.0.4 - Forms6i patch 17 - Toad 11.1 - sharePoint 2010 |
||
|
|
00
|
|
|
#13 | |||
|
Expert Confirmé Sénior
![]() ![]() ![]() Laurent SchneiderAdministrateur de base de données Inscription : décembre 2005 Messages : 2 927 ![]() |
Citation:
Code :
|
|||
|
00
|
|
|
#14 |
|
Invité régulier
![]() Inscription : février 2007 Messages : 47 ![]() |
Merci a tous
Merci aussi pour cette astuce avec la fonction TRUNC, je viens de modifier ma requete et toutes mes requetes où j'utilisais des dates dans le meme contexte...merci encore...Merci aussi pour cette astuce avec la concatenation avec des pipes ça marche...on apprend toujours... |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com