Sql : fusion de tables

Résolu/Fermé
kirby_blue Messages postés 6 Date d'inscription dimanche 11 mai 2008 Statut Membre Dernière intervention 3 octobre 2008 - 11 mai 2008 à 19:29
kirby_blue Messages postés 6 Date d'inscription dimanche 11 mai 2008 Statut Membre Dernière intervention 3 octobre 2008 - 12 mai 2008 à 22:55
Bonjour,

J'ai deux tables sql :

Table1
id
auteur
article

Table2
id
auteur

sachant que les id de ma table1 sont erronés, j'aimerais les remplacer par ceux de la table2 pour chaque personne.
Quelle requête sql dois-je utiliser pour cela ?
A voir également:

1 réponse

kirby_blue Messages postés 6 Date d'inscription dimanche 11 mai 2008 Statut Membre Dernière intervention 3 octobre 2008 1
11 mai 2008 à 21:22
J'ai essayé :

UPDATE articles SET author_id = (
SELECT authors.id FROM authors, articles WHERE articles.author_name = authors.author_name);

Mais le problème est que j'ai plusieurs résultats dans mon sous-select...Forcément, il y a plusieurs articles écrits par le même auteur. Comment tous les remplacer ?
1
kirby_blue Messages postés 6 Date d'inscription dimanche 11 mai 2008 Statut Membre Dernière intervention 3 octobre 2008 1
12 mai 2008 à 22:55
Bon, ben on dirait que j'ai trouvé tout seul comme un grand :-D


UPDATE articles ar SET author_id = au.id FROM authors au WHERE ar.author_name=au.author_name;


rien de bien méchant en somme...mais bon, il faut bien commencer quelque part....
0