У меня проблема с разработкой Self Join.MySQL Self Join Не все строки включены
У меня есть следующая таблица:
CREATE TABLE `test`.`tableN` (
`id` int(10) unsigned NOT NULL auto_increment,
`Group` int(10) unsigned NOT NULL,
`Item` int(10) unsigned NOT NULL,
`data` varchar(45) default NULL,
PRIMARY KEY (`id`)
)
ENGINE=InnoDB;
INSERT INTO `test`.`tableN` (`Group`,`Item`,`data`)
VALUES
(1,100,'aaa'),
(1,200,'bbb'),
(2,100,'ccc'),
(2,200,'ddd'),
(3,100,'eee');
Что я тогда нужно сделать, это выполнить запрос, который выводит данные для каждого «элемента» в одной строке.
Запросов У меня есть:
SELECT
t1.`Group`,
t1.`item`,
t1.`data`,
t2.`item`,
t2.`data`
FROM tableN t1
LEFT JOIN tableN t2 ON t2.`group`=t1.`group`
WHERE 1=1
AND t1.item = 100
AND t2.item = 200
GROUP BY t1.`Group`;
Проблема заключается в том, возвращает только 2 строки (группа 1 и группа 2). Мне нужно также вернуть строку для Group = 3, даже если для элемента = 200 нет записи.
Как это сделать, пожалуйста.