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

SQL Oracle Discussion :

UPDATE à partir de multiple résultat


Sujet :

SQL Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Septembre 2008
    Messages
    107
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 107
    Par défaut UPDATE à partir de multiple résultat
    Bonjour, via cette requette :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT colonne1, colonne2
    FROM mot_cle
    WHERE  colonne1=003687482
    j'obtiens le résultat suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    colonne1	colonne2
    003687482	béton armé
    003687482	charpente
    003687482	structure
    et j'aimerais via un insert remplir une table de la structure suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    colonne1	MCL1		MCL2		MCL3
    003687482	béton armé	charpente	structure
    Mais je n'arrive à trouver la bonne syntaxe pour répartir les 3 enregistrements dans un seul enregistrement d'arrivé.

    Merci d'avance pour vos idées

  2. #2
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Sr. Specialist Solutions Architect @Databricks
    Inscrit en
    Septembre 2008
    Messages
    8 454
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Sr. Specialist Solutions Architect @Databricks
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 454
    Par défaut
    Que se passe-t'il si un produit se retrouve avec 4 ou 5 éléments ?
    S'il se retrouve avec un seul élément ?

  3. #3
    Membre confirmé
    Inscrit en
    Septembre 2008
    Messages
    107
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 107
    Par défaut
    soi on a aucun MCL donc vide, soi maximum 3.

  4. #4
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Sr. Specialist Solutions Architect @Databricks
    Inscrit en
    Septembre 2008
    Messages
    8 454
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Sr. Specialist Solutions Architect @Databricks
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 454
    Par défaut
    Dans ce cas c'est un petit pivot :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    WITH mot_cle AS
    (
    select '003687482' as col1, 'béton armé' as col2 from dual union all
    select '003687482'        , 'charpente'          from dual union all
    select '003687482'        , 'structure'          from dual
    )
      ,  mot_cle_rn AS
    (
    SELECT col1, col2,
           row_number() over(partition by col1 order by col2 asc) as rn
      FROM mot_cle
     WHERE col1 = '003687482'
    )
      SELECT col1,
             max(case rn when 1 then col2 end) as mcl1,
             max(case rn when 2 then col2 end) as mcl2,
             max(case rn when 3 then col2 end) as mcl3
        FROM mot_cle_rn
    GROUP BY col1;
     
    COL1		MCL1		MCL2		MCL3
    003687482	béton armé	charpente	structure

  5. #5
    Membre confirmé
    Inscrit en
    Septembre 2008
    Messages
    107
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 107
    Par défaut
    résultat niquel, j'ai juste mis mon insert avant :=)

    Merci :=)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Requête update à partir d'une autre table
    Par amiral thrawn dans le forum Langage SQL
    Réponses: 5
    Dernier message: 15/02/2024, 11h40
  2. Réponses: 2
    Dernier message: 26/12/2006, 22h40
  3. Code shell à partir d'un résultat Sqlplus
    Par zaki25 dans le forum Linux
    Réponses: 1
    Dernier message: 16/11/2006, 10h22
  4. MySQL - Update et insert Multiple
    Par mastronic dans le forum Requêtes
    Réponses: 1
    Dernier message: 22/08/2006, 09h28
  5. [oracle 9i]update à partir d'une selection complexe
    Par Requin15 dans le forum Langage SQL
    Réponses: 1
    Dernier message: 13/06/2006, 10h18

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