Home > database >  About group_concat ()
About group_concat ()

Time:09-20

I am using group_concat () has a problem, my demand is that there is a movie, the movie the two classification, then left associated query, there will be two records,
I use group_concat () want to make two lines classification data merged into a line of data,

# a, on the first test of table structure and data of SQL


 
Navicat Premium Data Transfer

The Source Server: the
The Source Server Type: MySQL
The Source Server Version: 80012
The Source Host: localhost: 3306
The Source Schema: test

The Target Server Type: MySQL
The Target Server Version: 80012
The File Encoding: 65001

Date: 11/03/2019 23:26:12
*/

The SET NAMES utf8mb4;
The SET FOREIGN_KEY_CHECKS=0;

-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
- Table structure for the actor
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
DROP TABLE IF the EXISTS ` actor `;
The CREATE TABLE ` actor ` (
` actor_id ` int (11), NOT NULL AUTO_INCREMENT,
` actor_name ` varchar (10) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT 'actor name,
PRIMARY KEY (` actor_id `)
) ENGINE=InnoDB AUTO_INCREMENT=25 DEFAULT CHARSET=utf8 COMMENT='cast';

-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
- Records of actor
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
BEGIN;
INSERT INTO ` actor ` VALUES (4, 'GuYueFang source');
INSERT INTO ` actor ` VALUES (5, 'chicken nine songs');
INSERT INTO ` actor ` VALUES (6, 'Wu Shuai');
INSERT INTO ` actor ` VALUES (8, 'Long Gong');
INSERT INTO ` actor ` VALUES (9, celestial stars' honour ');
COMMIT;

-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
- Table structure for genre
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
DROP TABLE IF the EXISTS ` genre `;
The CREATE TABLE ` genre ` (
` genre_id ` int (11), NOT NULL AUTO_INCREMENT,
` genre_name ` varchar (255) COLLATE utf8mb4_bin NOT NULL,
PRIMARY KEY (` genre_id `) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin;

-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
- Records of genre
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
BEGIN;
INSERT INTO ` genre ` VALUES (1, 'science');
INSERT INTO ` genre ` VALUES (2, 'plot');
INSERT INTO ` genre ` VALUES (3, "comedy");
INSERT INTO ` genre ` VALUES (4, 'terrorist');
COMMIT;

-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
- Table structure for movie
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
DROP TABLE IF the EXISTS ` movie `;
The CREATE TABLE ` movie ` (
` movie_id ` int (11), NOT NULL AUTO_INCREMENT,
` movie_name ` varchar (30) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,
PRIMARY KEY (` movie_id `) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=156 DEFAULT CHARSET=utf8 COMMENT='movie table;

-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
- Records of movie
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
BEGIN;
INSERT INTO ` movie ` VALUES (1, 'method of reality);
INSERT INTO ` movie ` VALUES (2, 'the godfather');
INSERT INTO ` movie ` VALUES (3, "seven samurai");
INSERT INTO ` movie ` VALUES (4, "cinema paradiso");
COMMIT;

-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
- Table structure for movie_actor
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
DROP TABLE IF the EXISTS ` movie_actor `;
The CREATE TABLE ` movie_actor ` (
` id ` int (11), NOT NULL AUTO_INCREMENT,
` movie_id ` int (11), NOT NULL DEFAULT '0' COMMENT 'movie id',
` actor_id ` int (11), NOT NULL COMMENT id 'actors',
The PRIMARY KEY (` id `)
) ENGINE=InnoDB AUTO_INCREMENT=13 DEFAULT CHARSET=utf8 COMMENT='movie, actor middle table;

-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
- Records of movie_actor
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
BEGIN;
INSERT INTO ` movie_actor ` VALUES (1, 1, 4);
INSERT INTO ` movie_actor ` VALUES (2, 1, 5);
INSERT INTO ` movie_actor ` VALUES (3, 1, 5);
INSERT INTO ` movie_actor ` VALUES (4, 1, 8);
INSERT INTO ` movie_actor ` VALUES (5, 1, 9);
INSERT INTO ` movie_actor ` VALUES (6, 2, 3);
INSERT INTO ` movie_actor ` VALUES (7, 3, 5);
INSERT INTO ` movie_actor ` VALUES (8, 2, 9);
INSERT INTO ` movie_actor ` VALUES (9, 3, 8);
INSERT INTO ` movie_actor ` VALUES (10, 3, 9);
INSERT INTO ` movie_actor ` VALUES (11, 4, 8);
INSERT INTO ` movie_actor ` VALUES (12, 5, 4);
COMMIT;

-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
- Table structure for movie_genre
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
DROP TABLE IF the EXISTS ` movie_genre `;
The CREATE TABLE ` movie_genre ` (
` id ` int (11), NOT NULL AUTO_INCREMENT,
` movie_id ` int (11), NOT NULL DEFAULT '0' COMMENT 'movie id',
` genre_id ` int (11), NOT NULL DEFAULT '0' COMMENT 'category id',
PRIMARY KEY (` id `),
The KEY ` asset_id ` (` movie_id `)
) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=utf8 COMMENT='films, among classification table;

-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
- Records of movie_genre
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
BEGIN;
INSERT INTO ` movie_genre ` VALUES (1, 1, 2);
INSERT INTO ` movie_genre ` VALUES (2, 1, 4);
INSERT INTO ` movie_genre ` VALUES (3, 2, 2);
INSERT INTO ` movie_genre ` VALUES (4, 3, 2);
INSERT INTO ` movie_genre ` VALUES (5, 3, 4);
INSERT INTO ` movie_genre ` VALUES (6, 3, 3);
INSERT INTO ` movie_genre ` VALUES (7, 4, 2); nullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnullnull
  • Related