Jak zamówić zapytanie MySQL używając ORDER by
Krok 1
Utwórz podstawowe polecenie SELECT, aby zwrócić wiersze, którymi jesteś zainteresowany. W tym momencie kolejność, w jakiej są one zwracane, nie jest ważna. W tym przykładzie konsultowana jest baza danych klientów w celu uzyskania listy klientów z ujemnymi saldami. Przykład: SELECT * FROM clients WHERE balance <0.0;
Krok 2
Dodaj klauzulę ORDER BY. Dzięki temu serwer MySQL będzie sortował wiersze według kolumn. Na przykład, jeśli chcesz zobaczyć wszystkie oczekujące konta w kolejności salda, możesz dodać "Saldo ORDER BY" na końcu zapytania. Przykład: SELECT * FROM clients WHERE saldo <0, 0 ORDER BY balance;
Krok 3
Określa w którym kierunku zamówić, ponieważ kolejność zwracanych wierszy może nadal nie być znacząca. Wiersze mogą być zwracane w porządku rosnącym lub malejącym.
Krok 4
Użyj ASC lub DESC. Korzystając z ASC, posortujesz dane, aby najpierw zobaczyć najmniejszą liczbę. Używając DESC, posortujesz dane tak, abyś mógł zobaczyć najwyższy numer jako pierwszy. W tym zapytaniu najpierw szukane są klienci o najwyższym saldzie ujemnym. ORDER BY zwróci zestawy o największej liczbie ujemnej (najmniejszej) u góry. Przykład: SELECT * FROM clients WHERE saldo <0, 0 ORDER BY balance balance ASC;
Krok 5
Zamów przez kilka kolumn, ponieważ czasami znajdziesz duże grupy wierszy, które zostały zamówione w tym samym numerze. Na przykład, jeśli w bazie danych znajduje się 100 klientów z saldem 0, pojawiają się one w dowolnej kolejności. Lepiej jest mieć co najmniej dwa kryteria klasyfikacji dla takich sytuacji.
Krok 6
Używa wielu kryteriów klasyfikacji oddzielonych przecinkami. W tym przypadku klienci są wymieniani w porządku alfabetycznym według nazwy po ich zamówieniu przez saldo. Przykład: SELECT * FROM clients WHERE saldo <0, 0 ORDER BY balance, ASC name;