Podanie ORDER BY w tabeli jest tylko pomocą dla silnika w przyspieszeniu zapytań o tej samej kolejności. Nie zmusi to mysql, aby zawsze zwracał wynik w tej samej kolejności.
Opisane w tym:http://dev.mysql.com /doc/refman/5.1/en/alter-table.html
„ORDER BY umożliwia utworzenie nowej tabeli z wierszami w określonej kolejności. Należy pamiętać, że tabela nie pozostaje w tej kolejności po wstawieniu i usunięciu. Ta opcja jest przydatna przede wszystkim, gdy wiesz, że w większości są to zapytania dotyczące wierszy w przez większość czasu w określonej kolejności. Używając tej opcji po dużych zmianach w tabeli, możesz uzyskać wyższą wydajność. W niektórych przypadkach może to ułatwić sortowanie dla MySQL, jeśli tabela jest uporządkowana według kolumny, którą chcesz zamówić później.
Musisz więc użyć wyrażenia ORDER BY również w swoich zapytaniach.