Maison > base de données > tutoriel mysql > Exemple de code MySQL pour implémenter une requête un-à-plusieurs

Exemple de code MySQL pour implémenter une requête un-à-plusieurs

不言
Libérer: 2019-02-14 11:27:33
avant
3818 Les gens l'ont consulté

Le contenu de cet article concerne l'exemple de code de MySQL implémentant une requête un-à-plusieurs. Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer.

Ce que nous voulons implémenter cette fois, c'est une requête un-à-plusieurs, qui est implémentée à l'aide de la fonction group_concat de MySQL.

group_concat

En termes simples, la fonction de cette fonction est de connecter plusieurs champs. Pour une explication détaillée de la fonction, veuillez consulter cet article.

Table de données

Nous créons d'abord deux tables

CREATE TABLE `student` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` char(10) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;

-- ----------------------------
-- Records of student
-- ----------------------------
INSERT INTO `student` VALUES ('1', 'tom');
INSERT INTO `student` VALUES ('2', 'jerry');

CREATE TABLE `course` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `s_id` int(11) NOT NULL,
  `c_name` char(10) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=6 DEFAULT CHARSET=utf8;

-- ----------------------------
-- Records of course
-- ----------------------------
INSERT INTO `course` VALUES ('1', '1', '语文');
INSERT INTO `course` VALUES ('2', '1', '数学');
INSERT INTO `course` VALUES ('3', '2', '英语');
INSERT INTO `course` VALUES ('4', '2', '体育');
INSERT INTO `course` VALUES ('5', '2', '美术');
Copier après la connexion

Instance

Si nous utilisons l'habituel The le résultat de la requête SQL

SELECT s.`name`,c.`c_name` FROM student AS s LEFT JOIN course AS c ON c.s_id = s.id;
Copier après la connexion

est

Exemple de code MySQL pour implémenter une requête un-à-plusieurs

Ci-dessous, utilisez la fonction group_concat pour interroger

SELECT s.`name`,(SELECT group_concat(course.c_name) FROM course WHERE course.s_id = s.id) FROM student AS s;
Copier après la connexion

. this Les résultats de la requête

Exemple de code MySQL pour implémenter une requête un-à-plusieurs

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!

Étiquettes associées:
source:segmentfault.com
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal