Query 1 - bad results: SELECT items_6 . * , cm1.brand AS brand1, cm2.model AS model1 FROM items_6 LEFT JOIN cars_models AS cm1 ON cm1.brandid = items_6.brand LEFT JOIN cars_models AS cm2 ON cm2.id = items_6.model GROUP BY items_6.id +----+-------+-------+----------+--------+--------+ | id | brand | model | imported | brand1 | model1 | +----+-------+-------+----------+--------+--------+ | 28 | 54 | 618 | 0 | NULL | NULL | | 29 | 65 | 1133 | 0 | NULL | NULL | | 30 | 123 | 0 | 0 | NULL | NULL | +----+-------+-------+----------+--------+--------+ Query 2 - good results, but not unique by items_6.id: SELECT DISTINCT items_6 . * , cm1.brand AS brand1, cm2.model AS model1 FROM items_6 LEFT JOIN cars_models AS cm1 ON cm1.brandid = items_6.brand LEFT JOIN cars_models AS cm2 ON cm2.id = items_6.model +----+-------+-------+----------+------------+--------+ | id | brand | model | imported | brand1 | model1 | +----+-------+-------+----------+------------+--------+ | 28 | 54 | 618 | 0 | NULL | NULL | | 29 | 65 | 1133 | 0 | Volkswagen | Touran | | 29 | 65 | 1133 | 0 | VW | Touran | | 30 | 123 | 0 | 0 | NULL | NULL | +----+-------+-------+----------+------------+--------+ I am expecting: +----+-------+-------+----------+------------+--------+ | id | brand | model | imported | brand1 | model1 | +----+-------+-------+----------+------------+--------+ | 28 | 54 | 618 | 0 | NULL | NULL | | 29 | 65 | 1133 | 0 | Volkswagen | Touran | | 30 | 123 | 0 | 0 | NULL | NULL | +----+-------+-------+----------+------------+--------+ OR +----+-------+-------+----------+------------+--------+ | id | brand | model | imported | brand1 | model1 | +----+-------+-------+----------+------------+--------+ | 28 | 54 | 618 | 0 | NULL | NULL | | 29 | 65 | 1133 | 0 | VW | Touran | | 30 | 123 | 0 | 0 | NULL | NULL | +----+-------+-------+----------+------------+--------+ SQL EXPORT: CREATE TABLE IF NOT EXISTS `cars_models` ( `id` smallint(6) NOT NULL AUTO_INCREMENT, `model` varchar(30) DEFAULT NULL, `brand` varchar(15) DEFAULT NULL, `brandid` smallint(6) NOT NULL, PRIMARY KEY (`id`), KEY `brand_cat` (`brand`), KEY `model_brand_mm` (`model`,`brand`), KEY `brandid` (`brandid`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=4289 ; INSERT INTO `cars_models` (`id`, `model`, `brand`, `brandid`) VALUES (3225, 'Crafter', 'Volkswagen', 65), (3193, 'New Beetle Cabrio', 'Volkswagen', 65), (3192, 'Passat CC', 'Volkswagen', 65), (3141, 'T5 Transporter Bus', 'Volkswagen', 65), (3140, 'T5 Transporter Combi', 'Volkswagen', 65), (3139, 'T4 Transporter Combi', 'Volkswagen', 65), (3063, 'T3 Transporter', 'Volkswagen', 65), (3056, 'Tiguan', 'Volkswagen', 65), (2969, 'T5 Caravelle', 'Volkswagen', 65), (3161, 'LT Combi', 'Volkswagen', 65), (2824, 'Golf Plus', 'Volkswagen', 65), (3129, 'Caddy Combi', 'Volkswagen', 65), (2460, 'Taro', 'Volkswagen', 65), (2337, 'T2 Transporter', 'Volkswagen', 65), (2246, 'Fox', 'Volkswagen', 65), (2027, 'Golf', 'Volkswagen', 65), (1812, 'T5 Transporter', 'Volkswagen', 65), (1537, 'Polo Variant', 'Volkswagen', 65), (1509, 'T4 Multivan', 'Volkswagen', 65), (1453, 'Sharan', 'Volkswagen', 65), (1133, 'Touran', 'Volkswagen', 65), (2557, 'Eos', 'Volkswagen', 65), (1129, 'Beetle', 'Volkswagen', 65), (867, 'Corrado', 'Volkswagen', 65), (825, 'Lupo', 'Volkswagen', 65), (759, 'Bora Variant', 'Volkswagen', 65), (757, 'Golf Cabrio', 'Volkswagen', 65), (717, 'Vento', 'Volkswagen', 65), (716, 'Touareg', 'Volkswagen', 65), (715, 'T4 Transporter', 'Volkswagen', 65), (714, 'T4 Caravelle', 'Volkswagen', 65), (712, 'Scirocco', 'Volkswagen', 65), (710, 'Polo Classic', 'Volkswagen', 65), (709, 'Polo', 'Volkswagen', 65), (708, 'Phaeton', 'Volkswagen', 65), (707, 'Passat Variant', 'Volkswagen', 65), (706, 'Passat', 'Volkswagen', 65), (705, 'New Beetle', 'Volkswagen', 65), (702, 'LT', 'Volkswagen', 65), (701, 'Jetta', 'Volkswagen', 65), (700, 'Golf Variant', 'Volkswagen', 65), (698, 'Caddy', 'Volkswagen', 65), (697, 'Bora', 'Volkswagen', 65), (4086, 'Up', 'Volkswagen', 65), (3949, 'T4 Transporter Bus', 'Volkswagen', 65), (3945, 'Amarok', 'Volkswagen', 65), (3946, 'Iltis', 'Volkswagen', 65), (3973, 'T3 Transporter Bus', 'Volkswagen', 65), (4011, 'California', 'Volkswagen', 65), (4022, 'Routan', 'Volkswagen', 65), (4056, 'T5 Multivan', 'Volkswagen', 65), (4131, 'CC', 'Volkswagen', 65), (4217, 'Passat Alltrack', 'Volkswagen', 65), (4223, 'Beetle Cabrio', 'Volkswagen', 65), (4284, 'Golf Sportsvan', 'Volkswagen', 65), (4288, 'nomodel', 'VW', 65); CREATE TABLE IF NOT EXISTS `items_6` ( `id` int(11) NOT NULL AUTO_INCREMENT, `brand` int(11) DEFAULT NULL, `model` int(11) DEFAULT NULL, `imported` tinyint(1) NOT NULL DEFAULT '0', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Pre autobazar' AUTO_INCREMENT=180 ; INSERT INTO `items_6` (`id`, `brand`, `model`, `imported`) VALUES (28, 54, 618, 0), (29, 65, 1133, 0), (30, 123, 0, 0);