Forum Webmastera, HTML, CSS, PHP, MySQL, Hosting, Domeny - Forum dla Webmasterów
[MySQL] Sortowanie - Wersja do druku

+- Forum Webmastera, HTML, CSS, PHP, MySQL, Hosting, Domeny - Forum dla Webmasterów (https://www.webmastertalk.pl)
+-- Dział: Technologie internetowe - tworzenie stron WWW (https://www.webmastertalk.pl/forum-technologie-internetowe-tworzenie-stron-www)
+--- Dział: Programowanie, Bazy danych (https://www.webmastertalk.pl/forum-programowanie-bazy-danych)
+--- Wątek: [MySQL] Sortowanie (/thread-mysql-sortowanie)



[MySQL] Sortowanie - benny - 22-08-2011

Witam,

Mam problem z sortowaniem danych.
Otóż, każdy wiersz zawiera kilka danych: id modelu, marka, model, podmodel.
Problem jest następujący: chcę posortować to wszystko tak, aby wyświetlały się po kolei wszystkie komórki (oprócz id modelu).

Wpisując ORDER BY marka ASC
Dostaję wynik np.

Alfa Romeo 33
Alfa Romeo 75
Alfa Romeo 90
...
BMW Z-Series Z1
BMW Z-Series Z3
...
BMW X-Series X1
BMW X-Series X3
BMW X-Series X5
BMW X-Series X5M

Co jest błędne, ponieważ X w alfabecie jest przed Z.
Dodając do zapytania ORDER BY make, model ASC jest problem z BMW jest rozwiązany ale zaś Alfa Romeo zaczyna się od 145 a nie 33. Dodając natomiast ORDER BY make, lenght(model) już w ogóle głupieje przy Alfie, bo niby jest ok, ale np. Alfa Romeo GT jest przed Alfa Romeo Brera.

Jak rozwiązać ten problem?
Pole model raczej musi być varchar bo inaczej nie wpakuję tam normalnych nazw modeli.