Maison >base de données >tutoriel mysql >Comment combiner les données de plusieurs tables MySQL dans une nouvelle table ?

Comment combiner les données de plusieurs tables MySQL dans une nouvelle table ?

Susan Sarandon
Susan Sarandonoriginal
2024-11-23 02:40:11716parcourir

How to Combine Data from Multiple MySQL Tables into a New Table?

Création d'une nouvelle table à partir de plusieurs tables existantes dans MySQL

Pour créer une nouvelle table qui combine les données et les colonnes de plusieurs tables existantes, vous peut utiliser l'opération JOIN. Dans MySQL, cela peut être réalisé en suivant les étapes suivantes :

  1. Rejoindre les tables : utilisez le mot-clé JOIN pour connecter les tables en fonction de champs communs. Par exemple, pour joindre les tables de personnes, de taxonomie et de détails en fonction du champ person_id :
SELECT *
FROM people AS p
JOIN details AS d ON p.id = d.person_id
JOIN taxonomy AS t ON d.detail_id = t.id
  1. Sélectionnez les colonnes souhaitées : spécifiez les colonnes que vous souhaitez inclure dans la nouvelle table à l’aide de l’instruction SELECT. Par exemple, si vous souhaitez créer une nouvelle table avec l'identifiant, le nom, le prénom, l'e-mail et l'âge, vous modifierez la requête comme suit :
SELECT p.id, p.last_name, p.first_name, p.email, d.content AS age
FROM people AS p
JOIN details AS d ON p.id = d.person_id
JOIN taxonomy AS t ON d.detail_id = t.id
WHERE t.taxonomy = 'age'
  1. Créer le Nouvelle table : exécutez l'instruction CREATE TABLE pour créer une nouvelle table avec les colonnes et les données spécifiées. Par exemple, pour créer une nouvelle table nommée new_table basée sur la requête précédente :
CREATE TABLE new_table AS
SELECT p.id, p.last_name, p.first_name, p.email, d.content AS age
FROM people AS p
JOIN details AS d ON p.id = d.person_id
JOIN taxonomy AS t ON d.detail_id = t.id
WHERE t.taxonomy = 'age'
  1. Vous pouvez également insérer dans une table existante : si vous avez déjà créé la table new_table, vous pouvez utiliser l'instruction INSERT pour la remplir avec les données de la table jointe. tables :
INSERT INTO new_table (id, last_name, first_name, email, age)
SELECT p.id, p.last_name, p.first_name, p.email, d.content AS age
FROM people AS p
JOIN details AS d ON p.id = d.person_id
JOIN taxonomy AS t ON d.detail_id = t.id
WHERE t.taxonomy = 'age'

En utilisant ces méthodes, vous pouvez créer de nouvelles tables qui combinent des données et des colonnes de plusieurs tables existantes dans MySQL, offrant ainsi un moyen pratique et efficace d'organiser et d'accéder aux informations.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn