Jak prawie każdy inny silnik SQL, tabele MySQL MyISAM nie dają żadnych gwarancji co do kolejności zwracania wierszy, chyba że określisz klauzulę ORDER BY. Zazwyczaj kolejność, w jakiej są zwracane, jest kolejnością, w jakiej zostały odczytane z systemu plików, która może zmieniać się z zapytania na zapytanie w zależności od aktualizacji, usunięć, a nawet stanu buforowanych wyborów.
Jeśli chcesz uniknąć zwrócenia tego samego wiersza więcej niż raz, musisz uporządkować według czegoś, a klucz podstawowy jest najbardziej oczywistym kandydatem.