Come ordinare una MySQL Query utilizzando l'ordine da

June 30

Righe da una query MySQL SELEZIONA vengono restituiti in un ordine arbitrario o imprevedibile. Dal momento che il ritorno ha più a che fare con hashing interno e algoritmi di ricerca di quanto non faccia con i tuoi dati, l'ordine delle righe non è di solito utile per un programmatore. Per riportare le righe in un ordine significativo, è possibile utilizzare la clausola ORDER BY del comando SELECT per ordinarli.

istruzione

1 Formare il comando SELECT base per riportare le righe in cui si è interessati. A questo punto, l'ordine in cui vengono restituite le righe non è di importanza. In questo esempio si interroga un database di clienti di ottenere un elenco di clienti con saldi negativi. esempio:
SELECT * FROM customers WHERE balance < 0.0;

2 Aggiungere una clausola ORDER BY. ORDER BY dirà al server MySQL per ordinare le righe da una colonna. Per esempio, se si desidera visualizzare tutti i conti in sospeso, al fine del loro equilibrio, è possibile aggiungere "ORDER BY equilibrio" al fine della query. esempio:
SELECT * FROM customers WHERE balance < 0.0 ORDER BY balance;

3 Definire in quale direzione per ordinare, come l'ordine delle righe restituite potrebbe non ancora essere significativo. Le righe possono essere restituiti in ordine crescente o decrescente.

4 Utilizzare ASC o DESC. Utilizzando ASC sarà ordinare i dati in modo che si vede prima il numero più piccolo. Utilizzando DESC sarà ordinare i dati in modo che si vede prima il maggior numero. In questa query, si sta cercando per i clienti con la più grande saldo negativo prima. ORDER BY restituirà gli array con il maggior numero negativo (il più piccolo numero) in alto. esempio:
SELECT * FROM customers WHERE balance < 0.0 ORDER BY balance ASC;

5 Ordina per più colonne, come a volte ci si imbatte in gruppi di grandi righe che sono state Ordinati per lo stesso numero. Ad esempio, se ci sono 100 clienti nel database con un saldo pari a 0, i clienti saranno visualizzate in ordine arbitrario. E 'meglio avere almeno due criteri di ordinamento per situazioni come questa.

6 Utilizzare più criteri di ordinamento separate da virgole. Qui, i clienti vengono visualizzati in ordine alfabetico per nome dopo che sono ordinati per equilibrio. esempio:
SELECT * FROM customers WHERE balance < 0.0 ORDER BY balance,name ASC;

Consigli e avvertenze

  • Di per sé, ORDER BY non è un comando. È una clausola o componente aggiuntivo, il comando SELECT.