Home » Articole » Articole » Calculatoare » Programare » SQL » SQL – Limbajul de interogare a datelor – SELECT – Sortarea și combinarea

SQL – Limbajul de interogare a datelor – SELECT – Sortarea și combinarea

postat în: SQL 0

Gruparea

Vom oferi clauza GROUP BY în combinație cu clauza HAVING într-un capitol ulterior.

Sortarea

SGBD este liber să livreze rândurile rezultate într-o ordine arbitrară. Rândurile pot fi returnate în ordinea cheii primare, în ordinea cronologică în care sunt stocate în baza de date, în ordinea unei chei interne organizate în arbore B sau chiar în ordine aleatorie. În ceea ce privește secvența rândurilor livrate, SGBD poate face ceea ce dorește. Nu te aștepta la nimic.

Dacă vrem o anumită ordine de rânduri, trebuie să ne exprimăm dorințele în mod explicit. Putem face acest lucru în clauza ORDER BY. Acolo specificăm o listă de nume de coloane în combinație cu o opțiune de sortare ascendentă sau descendentă.

-- toate persoanele în ordine crescătoare (care este implicită) a greutății lor
SELECT *
FROM   person
ORDER BY weight;
-- toate persoanele în ordinea descrescătoare a greutății lor
SELECT *
FROM   person
ORDER BY weight desc;

În rezultatul de mai sus, există două rânduri cu valori identice în coloana weight. Deoarece această situație duce la rezultate aleatorii, avem posibilitatea de a specifica mai multe coloane. Următoarele coloane sunt procesate numai pentru acele rânduri cu valori identice în toate coloanele anterioare.

-- Toate persoanele în ordinea descrescătoare a greutății lor. În cazuri ambigue, ordonați 
-- crescător coloana suplimentară loc_de_naștere: Birmingham înainte de San Francisco
SELECT *
FROM   person
ORDER BY weight desc, place_of_birth;

În clauza ORDER BY, putem specifica orice coloană a tabelului procesat. Nu ne limităm la cele care sunt returnate de proiecție.

-- aceeași ordonare ca mai sus
SELECT firstname, lastname
FROM   person
ORDER BY weight desc, place_of_birth;

Combinarea elementelor limbajului

Sunt obligatorii doar primele două elemente ale comenzii SELECT: partea de până la numele primului tabel (sau vizualizare). Toate celelalte sunt opționale. Daca le specificam si pe cele optionale, trebuie tinuta cont de succesiunea lor predeterminată. Dar sunt combinabile în funcție de nevoile noastre.

-- Am văzut pe această pagină: SELECT / FROM / WHERE / ORDER BY
SELECT p.lastname,
       p.weight,
       p.weight * 100 / (SELECT avg(p2.weight) FROM person p2) AS percentage_of_average
FROM   person p
WHERE  p.weight BETWEEN 70 AND 90
ORDER BY p.weight desc, p.place_of_birth;

(Include texte din Wikibooks traduse și adaptate de Nicolae Sfetcu)

Lucrul cu baze de date
Lucrul cu baze de date

Descoperă puterea bazelor de date cu acest ghid complet.

Nu a fost votat 19.11 lei38.26 lei Selectează opțiunile Acest produs are mai multe variații. Opțiunile pot fi alese în pagina produsului.
Ghid pagini Facebook – Campanii de promovare pe Facebook
Ghid pagini Facebook – Campanii de promovare pe Facebook

Ghidul complet pentru succesul pe Facebook – Descoperă strategii eficiente de promovare!

Nu a fost votat 19.11 lei Selectează opțiunile Acest produs are mai multe variații. Opțiunile pot fi alese în pagina produsului.
Ghid WordPress pentru dezvoltatori
Ghid WordPress pentru dezvoltatori

Resursa esențială care te va ghida pas cu pas în lumea complexă a platformei WordPress.

Nu a fost votat 19.11 lei Selectează opțiunile Acest produs are mai multe variații. Opțiunile pot fi alese în pagina produsului.

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *