MySQL左连接多个表未正确连接

MySQL左连接多个表未正确连接,mysql,left-join,Mysql,Left Join,我试图使用多个链接的左连接来填充SELECT查询中的字段,但是我无法完全正确地获得逻辑。我有以下表格: CREATE TABLE `tasks` ( `id` int(11) NOT NULL, `ticket_id` int(11) NOT NULL, `group_id` bigint(20) DEFAULT NULL, `title` varchar(150) DEFAULT NULL, `due_date` datetime DEFAULT NULL, PRIMA

我试图使用多个链接的左连接来填充SELECT查询中的字段,但是我无法完全正确地获得逻辑。我有以下表格:

CREATE TABLE `tasks` (
  `id` int(11) NOT NULL,
  `ticket_id` int(11) NOT NULL,
  `group_id` bigint(20) DEFAULT NULL,
  `title` varchar(150) DEFAULT NULL,
  `due_date` datetime DEFAULT NULL,
  PRIMARY KEY (`id`))

CREATE TABLE `role_group` (
  `role_id` int(10) NOT NULL,
  `group_id` varchar(45) NOT NULL)

CREATE TABLE `role` (
  `id` int(11) NOT NULL,
  `name` varchar(45) NOT NULL,
  PRIMARY KEY (`id`))
我想返回组ID与
role\u group
中的记录匹配但
NULL
中的记录不匹配的所有记录的角色名称

我目前的查询如下:

SELECT 
  t.id,
  t.group_id,
  t.title,
  t.due_date,
  r.name
FROM 
  tasks t
LEFT JOIN 
  role_group rg ON t.group_id = rg.group_id
LEFT JOIN 
  role r ON r.id = rg.role_id;
此时,无论是否有匹配的记录,查询只会在
role.name
中返回
NULL


编辑:这是一个男生错误-在
角色组
中没有与
任务
中的记录匹配的记录。很抱歉在这个问题上浪费了投稿人的时间。不确定是否应该删除,或者?

发布样本数据和预期结果。我很肯定你会发现问题所在。阅读:请注意,如果您在
角色组中有匹配项,并不意味着您在
角色组中也有匹配项。