IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Oracle Discussion :

Concatenation valeur d'une meme colonne


Sujet :

Oracle

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 18
    Points : 13
    Points
    13
    Par défaut Concatenation valeur d'une meme colonne
    Bonjour,
    mon problème est le suivant :

    j'ai une base du type :

    ID PARTIE VALEUR
    -------------------------
    1 1 je suis
    1 2 un tout petit
    1 3 peu bloqué
    2 1 merci
    2 2 de bien vouloir m'aider
    et j'aimerais pouvoir concaténer les valeurs d'un même id, les parties
    afin d'avoir un fichier du type :

    je suis un tout petit peu bloqué
    merci de bien vouloir m'aider

    est-ce possible dans l'environnement oracle ? par exemple avec un bloc PL/ SQL?
    Vaut-il mieux sortir les infos de la base dans un fichier et traiter le fichier avec unix ensuite pour les mettre au format voulu?
    je n'arrive pas à trouver de solution.
    je vous remercie du temps que vous m'accordez à lire ce message.

  2. #2
    Membre actif Avatar de DAB.cz
    Inscrit en
    Octobre 2006
    Messages
    221
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 221
    Points : 249
    Points
    249
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    create table t (id number, ord number, tx varchar2 (100));
    ....
     
    select trim (replace (SYS_CONNECT_BY_PATH (tx, '@'), '@', ' '))
      from t main
      where level = (select max (ti.ord) from t ti where ti.id = main.id)
      start with ord = 1
      connect by id = prior id and ord = (prior ord) + 1;
     
    je suis un tout petit peu bloqué
    merci de bien vouloir m'aider
    J'attends meilleur solutions....
    DAB

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 18
    Points : 13
    Points
    13
    Par défaut
    merci de ton aide mais le oracle chez moi n'accepte pas le SYS_CONNECT_BY_PASS et donc je suis à nouveau bloqué....

  4. #4
    Expert éminent sénior
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Points : 19 075
    Points
    19 075
    Par défaut
    d'où l'intérêt de préciser la version d'Oracle

  5. #5
    Membre actif Avatar de DAB.cz
    Inscrit en
    Octobre 2006
    Messages
    221
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 221
    Points : 249
    Points
    249
    Par défaut
    Citation Envoyé par unameno Voir le message
    merci de ton aide mais le oracle chez moi n'accepte pas le SYS_CONNECT_BY_PASS et donc je suis à nouveau bloqué....
    SYS_CONNECT_BY_PATH

    DAB

  6. #6
    McM
    McM est déconnecté
    Expert éminent

    Homme Profil pro
    Développeur Oracle
    Inscrit en
    Juillet 2003
    Messages
    4 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Oracle

    Informations forums :
    Inscription : Juillet 2003
    Messages : 4 580
    Points : 7 740
    Points
    7 740
    Billets dans le blog
    4
    Par défaut
    Pb maintes fois posé sur le forum.

    Le plus simple : créer une fonction qui à partir d'un identifiant te renvoie la concaténation des éléments grâce à un curseur.

    sinon, un des posts du forum
    http://www.developpez.net/forums/sho...=colonne+ligne

Discussions similaires

  1. SELECT sur plusieurs valeurs d'une meme colonne
    Par chaying dans le forum Débuter
    Réponses: 4
    Dernier message: 14/10/2011, 13h14
  2. Plusieurs valeurs pour une meme colonne
    Par Aragorn) dans le forum SQL
    Réponses: 4
    Dernier message: 03/01/2008, 14h46
  3. update multiple dans une meme colonne
    Par debdev dans le forum Langage SQL
    Réponses: 7
    Dernier message: 29/01/2006, 21h46
  4. Réponses: 6
    Dernier message: 13/12/2005, 11h05
  5. Alias colonne dépendant de la valeur d'une autre colonne
    Par daijoubu dans le forum Langage SQL
    Réponses: 6
    Dernier message: 31/08/2005, 09h17

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo