小编use*_*273的帖子

连接多个表时避免重复条目(MySQL)

(请参阅我在本文底部测试的数据库结构.)

我执行这个查询:

SELECT m.title, GROUP_CONCAT(DISTINCT(d.name) SEPARATOR ',') d FROM movies m
INNER JOIN movies_seen s
    ON s.object_id = m.id
LEFT JOIN movies_directors_connections dc
    ON dc.movie_id = m.id
LEFT JOIN movies_directors d
    ON d.id = dc.director_id
Run Code Online (Sandbox Code Playgroud)

有了这个结果:

title        | d 
Pulp Fiction | Quentin Tarantino,George Butler,Robert Fiore
Run Code Online (Sandbox Code Playgroud)

但我想要得到这个:

title        | d 
Pulp Fiction | Quentin Tarantino
Pumping Iron | George Butler,Robert Fiore
Run Code Online (Sandbox Code Playgroud)

和建议?:)

CREATE TABLE `movies` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`title` varchar(90) NOT NULL,
  PRIMARY KEY (`id`)
) …
Run Code Online (Sandbox Code Playgroud)

mysql sql select join

5
推荐指数
1
解决办法
7743
查看次数

标签 统计

join ×1

mysql ×1

select ×1

sql ×1