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

PHP & Base de données Discussion :

[SQL] fusionner deux tables


Sujet :

PHP & Base de données

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    119
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 119
    Points : 73
    Points
    73
    Par défaut [SQL] fusionner deux tables
    Bonjour,

    J'ai une table de concordances entre des anciennes références et des nouvelles. Je l'appelle Codes
    Elle a 4 colonnes : ancien , URL_ancien, nouveau, URL_nouveau
    Je viens de récupérer une nouvelle table de concordances révisée et mise à jour, mais elle ne contient que deux colonnes : ancien et nouveau. Je l'ai nommée Codes2.
    Je voudrais récupérer les données de la colonne URL_ancien de Codes pour les mettre dans Codes2.
    J'ai créé la colonne qu'il faut dans Codes2
    Je pense qu'il faut utiliser une jointure.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT Codes.URL_ancien FROM Codes, Codes2 WHERE Codes.ancien = Codes2.ancien
    me donne bien une liste d'url contenu dans URL_ancien de Codes, mais comment faire pour copier cette liste dans Codes 2 ?
    Bien cordialement,

    La loupiote

  2. #2
    Membre habitué Avatar de FrontLine
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2008
    Messages
    173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2008
    Messages : 173
    Points : 134
    Points
    134
    Par défaut
    Salut,

    peut être qu'un SELECT FROM code.... INSERT INTO code2... en une seule requête résoudrait ton problème ?

    FrontLine

  3. #3
    Membre averti Avatar de FredPsy
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Décembre 2006
    Messages
    285
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Formateur en informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2006
    Messages : 285
    Points : 342
    Points
    342
    Par défaut
    BOnsoir,
    Il faut que tu fasses d'abord ton SELECT,
    puis tu fais une boucle qui va prendre chaque résultat de ta requête de sélection et enfin, tu fais, à l'intérieur de la boucle, un INSERT, afin de pouvoir rentrer à nouveau tes données en base.

    En plus, clair (des fois, je pars en sucette) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    $requete = "select Codes.URL_ancien FROM Codes, Codes2 WHERE Codes.ancien = Codes2.ancien";
     
    $action = mysql_query($requete);
     
    while ($table = mysql_fetch_array($action))
     {
       mysql_query("insert into Codes2 values ('', '$table[0]')");
       /* $table[0] correspond à ton URL_ancien */
     }
    A tester, mais peut être que tu ne veux faire qu'un UPDATE de tes valeurs ? Si c'est la cas, c'est le même principe, mais avec une requête UPDATE.

  4. #4
    Membre habitué Avatar de FrontLine
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2008
    Messages
    173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2008
    Messages : 173
    Points : 134
    Points
    134
    Par défaut
    Oula c'est bourrin comme solution.

    D'où la requête SELECT ... INSERT, si ça ne va pas il vaut mieux charger les requêtes dans une variable et l'exécuter 1 seule fois

  5. #5
    Rédacteur
    Avatar de RideKick
    Homme Profil pro
    Directeur technique
    Inscrit en
    Septembre 2006
    Messages
    5 914
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Septembre 2006
    Messages : 5 914
    Points : 12 572
    Points
    12 572
    Par défaut
    tu peux faire ceci en une seule requête :

    INSERT dans SELECT

    Pour l'avoir essayé ça marche du feu de.....

  6. #6
    Membre averti Avatar de FredPsy
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Décembre 2006
    Messages
    285
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Formateur en informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2006
    Messages : 285
    Points : 342
    Points
    342
    Par défaut
    Citation Envoyé par RideKick Voir le message
    tu peux faire ceci en une seule requête :

    INSERT dans SELECT

    Pour l'avoir essayé ça marche du feu de.....
    Merci, pour ça, va falloir que je me replonge un peu dans la lecture de
    quelques bricoles, je crois

    Sinon, ma méthode bourrin, elle fonctionne aussi.

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    119
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 119
    Points : 73
    Points
    73
    Par défaut
    Bonjour,

    D'abord, je vous prie de m'excuser pour l'absence de toute réponse à vos messages d'aide due à un petit problème de santé et à une reprise un peu bousculée qui m'ont tenu éloigné de ce problème.
    La méthode "bourrin" va bien et je l'ai même comprise du premier coup.
    Du coup, je me suis quand même un peu attardé sur la méthode INSERT dans SELECT et j'y suis parvenu également.
    Merci donc à tous

    laloupiote

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

Discussions similaires

  1. Fusionner deux tables avec Sql/Hash
    Par Massalia dans le forum SAS Base
    Réponses: 3
    Dernier message: 13/08/2014, 10h52
  2. SQL Fusionner deux tables
    Par gcvoiron dans le forum Requêtes
    Réponses: 3
    Dernier message: 02/09/2009, 11h13
  3. Requette SQL entre deux tables !
    Par younes371 dans le forum Langage SQL
    Réponses: 2
    Dernier message: 08/01/2007, 15h57
  4. [SQL] Problème avec script de pagination et requête sql sur deux tables
    Par psychoBob dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 12/06/2006, 14h06
  5. Fusionner deux tables
    Par rdjema dans le forum Langage SQL
    Réponses: 5
    Dernier message: 30/11/2005, 18h42

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