Запрос возвращает больше строк чем есть в таблице

Bermuda

Новичок
Запрос возвращает больше строк чем есть в таблице

Почему

SELECT *
FROM table_a

возвращает больше строк чем

SELECT *
FROM table_a
LEFT JOIN table_b
ON table_a.id = table_b.userid

Насколько я понимаю строк должно выть не более чем в таблице table_a.

Почему второй запрос возвращает строк больше чем первый? Насколько я понимаю JOIN должен делаться так: берется таблица table_a и к каждой ее строке лепится строка из таблицы table_b связанная по какому-либо полю. В таком случае второй запрос никак не может возвращать количество строк большее чем есть в таблице table_a. Пожалуйста, проясните где я ошибаюсь.



На всякий случай приведу структуру таблиц:

CREATE TABLE `table_a` (
`id` int(10) unsigned NOT NULL auto_increment,
`username` varchar(100) NOT NULL default '',
PRIMARY KEY (`id`),
UNIQUE KEY `username` (`username`),
UNIQUE KEY `id` (`id`)
) TYPE=MyISAM CHARSET=latin1 COMMENT='One record for each person' AUTO_INCREMENT=87 ;

INSERT INTO `table_a` VALUES ('1', 'admin');
INSERT INTO `table_a` VALUES ('2', 'usuario');
INSERT INTO `table_a` VALUES ('3', 'guest');
INSERT INTO `table_a` VALUES ('4', 'nelico');
INSERT INTO `table_a` VALUES ('5', 'dtorres');
INSERT INTO `table_a` VALUES ('6', '[email protected]');
INSERT INTO `table_a` VALUES ('7', '[email protected]');
INSERT INTO `table_a` VALUES ('8', 'flafuente');
INSERT INTO `table_a` VALUES ('9', '[email protected]');
INSERT INTO `table_a` VALUES ('13', '[email protected]');
INSERT INTO `table_a` VALUES ('17', '[email protected]');
INSERT INTO `table_a` VALUES ('18', '[email protected]');
INSERT INTO `table_a` VALUES ('19', '[email protected]');
INSERT INTO `table_a` VALUES ('22', '[email protected]');
INSERT INTO `table_a` VALUES ('24', '[email protected]');
INSERT INTO `table_a` VALUES ('26', 'javierl');
INSERT INTO `table_a` VALUES ('29', '[email protected]');
INSERT INTO `table_a` VALUES ('30', '[email protected]');
INSERT INTO `table_a` VALUES ('31', '[email protected]');
INSERT INTO `table_a` VALUES ('32', '[email protected]');
INSERT INTO `table_a` VALUES ('33', '[email protected]');
INSERT INTO `table_a` VALUES ('34', '[email protected]');
INSERT INTO `table_a` VALUES ('35', '[email protected]');
INSERT INTO `table_a` VALUES ('36', '[email protected]');
INSERT INTO `table_a` VALUES ('37', '[email protected]');
INSERT INTO `table_a` VALUES ('38', '[email protected]');
INSERT INTO `table_a` VALUES ('39', '[email protected]');
INSERT INTO `table_a` VALUES ('41', '[email protected]');
INSERT INTO `table_a` VALUES ('42', '[email protected]');
INSERT INTO `table_a` VALUES ('43', 'montse');
INSERT INTO `table_a` VALUES ('45', 'patricia');
INSERT INTO `table_a` VALUES ('46', 'psperalta');
INSERT INTO `table_a` VALUES ('47', 'LHO');
INSERT INTO `table_a` VALUES ('48', '[email protected]');
INSERT INTO `table_a` VALUES ('49', 'jgomez');
INSERT INTO `table_a` VALUES ('50', '[email protected]');
INSERT INTO `table_a` VALUES ('57', 'miguelxvi');
INSERT INTO `table_a` VALUES ('58', '[email protected]');
INSERT INTO `table_a` VALUES ('59', 'arrabio');
INSERT INTO `table_a` VALUES ('60', 'kasbi');
INSERT INTO `table_a` VALUES ('61', 'cesarr');
INSERT INTO `table_a` VALUES ('62', 'ZZMidway');
INSERT INTO `table_a` VALUES ('63', '[email protected]');
INSERT INTO `table_a` VALUES ('64', 'iladot');
INSERT INTO `table_a` VALUES ('66', 'jesus');
INSERT INTO `table_a` VALUES ('67', '[email protected]');
INSERT INTO `table_a` VALUES ('68', 'joelzu');
INSERT INTO `table_a` VALUES ('69', 'joel');
INSERT INTO `table_a` VALUES ('70', 'lzanussi');
INSERT INTO `table_a` VALUES ('71', '[email protected]');
INSERT INTO `table_a` VALUES ('72', 'kiko');
INSERT INTO `table_a` VALUES ('73', 'pepito');
INSERT INTO `table_a` VALUES ('74', 'Luis');
INSERT INTO `table_a` VALUES ('76', 'Jorge');
INSERT INTO `table_a` VALUES ('77', 'CARLOS');
INSERT INTO `table_a` VALUES ('78', 'MAYO');
INSERT INTO `table_a` VALUES ('79', 'feitaco');
INSERT INTO `table_a` VALUES ('80', 'agustinms');
INSERT INTO `table_a` VALUES ('81', 'agustinmss');
INSERT INTO `table_a` VALUES ('82', 'pbeltran');
INSERT INTO `table_a` VALUES ('83', 'Cesar');
INSERT INTO `table_a` VALUES ('84', 'Javier');
INSERT INTO `table_a` VALUES ('85', 'jpineda');
INSERT INTO `table_a` VALUES ('86', 'Bermuda');


CREATE TABLE `table_b` (
`id` int(10) unsigned NOT NULL auto_increment,
`userid` int(10) unsigned NOT NULL default '0',
PRIMARY KEY (`id`),
UNIQUE KEY `id` (`id`)
) TYPE=MyISAM CHARSET=latin1 AUTO_INCREMENT=58 ;

INSERT INTO `table_b` VALUES ('50', '64');
INSERT INTO `table_b` VALUES ('43', '2');
INSERT INTO `table_b` VALUES ('54', '69');
INSERT INTO `table_b` VALUES ('39', '4');
INSERT INTO `table_b` VALUES ('53', '68');
INSERT INTO `table_b` VALUES ('52', '66');
INSERT INTO `table_b` VALUES ('51', '65');
INSERT INTO `table_b` VALUES ('55', '69');
INSERT INTO `table_b` VALUES ('56', '72');
INSERT INTO `table_b` VALUES ('42', '2');
INSERT INTO `table_b` VALUES ('49', '64');
INSERT INTO `table_b` VALUES ('45', '2');
INSERT INTO `table_b` VALUES ('44', '2');
INSERT INTO `table_b` VALUES ('41', '8');
INSERT INTO `table_b` VALUES ('40', '8');
INSERT INTO `table_b` VALUES ('48', '59');
INSERT INTO `table_b` VALUES ('35', '5');
INSERT INTO `table_b` VALUES ('36', '8');
INSERT INTO `table_b` VALUES ('38', '4');
INSERT INTO `table_b` VALUES ('57', '85');
 

fixxxer

К.О.
Партнер клуба
INSERT INTO `table_b` VALUES ('50', '64');
INSERT INTO `table_b` VALUES ('49', '64');
и т.д.

Вот поэтому...
 
Сверху