Maison >base de données >tutoriel mysql >Comment puis-je stocker et récupérer des données de type tableau dans MySQL ?
Méthodes pour stocker des tableaux dans une base de données MySQL
Bien que MySQL ne prenne pas en charge nativement les tableaux, il propose des approches alternatives pour stocker des données de type tableau. Une méthode courante consiste à utiliser plusieurs tables et à établir des relations entre elles à l'aide des opérations JOIN.
Création de plusieurs tables
Considérez le scénario décrit dans la question. Pour stocker un tableau de fruits dans la colonne "fruits" de la table Personne, nous pouvons créer les tables suivantes :
Personne :
Fruit :
Person_Fruit (table de liaison) :
Établir des relations
La table Person_Fruit sert de table de liaison, créant un de nombreuses relations entre les tables Personne et Fruit. Une ligne de ce tableau représente une relation entre une personne spécifique et un fruit spécifique.
Stockage de données de type tableau
Pour stocker un tableau de fruits pour une personne dans la colonne "fruits", insérez dans la table Person_Fruit plusieurs lignes, chaque ligne représentant un fruit.
Par exemple, pour stocker les fruits "pomme", "orange" et "banane" pour une personne avec l'identifiant = 1, insérez les lignes suivantes dans Person_Fruit :
(1, "apple") (1, "orange") (1, "banana")
Récupération de données de type tableau
Pour récupérer la gamme de fruits d'une personne, joignez les tables Person, Person_Fruit et Fruit en utilisant ce qui suit requête :
SELECT p.`name` AS `person_name`, GROUP_CONCAT(f.`fruit_name`) AS `fruits` FROM Person AS p INNER JOIN Person_Fruit AS pf ON p.`id` = pf.`person_id` INNER JOIN Fruit AS f ON pf.`fruit_name` = f.`fruit_name` GROUP BY p.`name`
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!