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)

Amenințările persistente avansate în securitatea cibernetică – Războiul cibernetic
Amenințările persistente avansate în securitatea cibernetică – Războiul cibernetic

Această carte esențială servește atât ca analiză detaliată, cât și ca un apel la acțiune pentru oricine este implicat în domeniul securității digitale.

Nu a fost votat Interval de prețuri: 9.51 lei până la 29.96 lei Selectează opțiunile Acest produs are mai multe variații. Opțiunile pot fi alese în pagina produsului.
Războiul electronic și inteligența artificială
Războiul electronic și inteligența artificială

Această carte este ideală pentru profesioniștii în afaceri, strategii militari, și publicul academic.

Nu a fost votat Interval de prețuri: 9.51 lei până la 24.80 lei Selectează opțiunile Acest produs are mai multe variații. Opțiunile pot fi alese în pagina produsului.
Statistica pentru afaceri
Statistica pentru afaceri

Instrumentul esențial pentru decizii inteligente în mediul de afaceri!

Nu a fost votat Interval de prețuri: 19.07 lei până la 40.86 lei Selectează opțiunile Acest produs are mai multe variații. Opțiunile pot fi alese în pagina produsului.


Descoperă mai multe la MultiMedia

Abonează-te ca să primești ultimele articole prin email.

Lasă un răspuns

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