CREATE TABLE tabela1 ( `id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT, `name` varchar(255) NOT NULL, `kod` varbinary(30) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin2; CREATE TABLE tabela2 ( `id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT, `name` varchar(255) NOT NULL, `kod` varbinary(30) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin2;
Pierwsza tabela zawiera 2862 rekordy, a druga 2892 rekordy. Robię zapytanie:
SELECT t1.name AS nameO, t1.kod AS kodO, t2.name AS nameM, t2.kod AS kodM FROM tabela1 t1 LEFT JOIN tabela2 t2 ON t1.name = t2.name;
Chcę pobrać tylko te rekordy z obu tabel, nazwy których w polu name są identyczne. Według mojej wiedzy, powinno mi pobrać około 2500 rekordów, a pobiera aż 4431, gdzie robię źle?