Cum să comandați o interogare MySQL folosind ORDER by

Întoarcerea unei interogări în MySQL este arbitrară și imprevizibilă.

Pasul 1

Formați comanda SELECT de bază pentru a returna rândurile în care vă interesează. În acest moment, ordinea în care sunt returnate nu este importantă. În acest exemplu, o bază de date a clienților este consultată pentru a obține o listă de clienți cu sold negativ. Exemplu: SELECT * FROM clienți WHERE echilibru <0.0;

Pasul 2

Adăugați o clauză ORDER BY. Aceasta va spune serverului MySQL să sorteze rândurile după coloană. De exemplu, dacă doriți să vedeți toate conturile în așteptare în ordinea soldului, puteți adăuga "ORDER BY BY balance" la sfârșitul interogării. Exemplu: SELECT * FROM clienți WHERE echilibru <0.0 ORDER BY balance;

Pasul 3

Definește în ce direcție se ordonează, deoarece ordinea rândurilor returnate ar putea să nu fie încă semnificativă. Rândurile pot fi returnate în ordine crescătoare sau în ordine descrescătoare.

Pasul 4

Utilizați ASC sau DESC. Folosind ASC veți sorta datele astfel încât să puteți vedea mai întâi cel mai mic număr. Folosind DESC veți sorta datele astfel încât să puteți vedea mai întâi numărul cel mai mare. În această interogare, clienții cu cel mai mare sold negativ sunt căutați mai întâi. ORDER BY va returna seturile cu cel mai mare număr negativ (cel mai mic număr) din partea de sus. Exemplu: SELECT * FROM clienți WHERE echilibru <0.0 ORDER BY balance ASC;

Pasul 5

Ordonați după mai multe coloane, deoarece uneori veți găsi grupuri mari de rânduri care au fost comandate în același număr. De exemplu, dacă în baza dvs. de date există 100 de clienți cu un sold de 0, ele apar în ordine arbitrară. Este mai bine să aveți cel puțin două criterii de clasificare pentru astfel de situații.

Pasul 6

Utilizează criterii multiple de clasificare separate prin virgule. Aici clienții sunt listați în ordine alfabetică după nume după ce au fost comandați de sold. Exemplu: SELECT * FROM clienți WHERE echilibru <0.0 ORDER BY balance, nume ASC;