Instrucțiunea Select (SQL)
Traducerea abrevierii SQL (limba interogărilor organizate structural) reflectă faptul că interogările sunt elementul cel mai frecvent utilizat în SQL. Selectați rândurile necesare, excludeți automat datele redundante, săriți sau rearanjați coloanele care vă vor ajuta Selectați (SQL) - un operator care spune DBMS-ului să emită anumite informații.
conținut
Sintaxă operator
Pentru a utiliza corect orice operator, trebuie mai întâi să vă familiarizați cu sintaxa limbajului de programare în cauză. Când vorbim în mod specific despre limbajul SQL, Select (operator) are următoarea sintaxă:
selecta | Spune baza de date că transmitem cererea. Acesta este cuvântul cheie. |
Unu, doi, trei ... | Lista coloanelor pentru ieșire |
de la | Indică numele tabelului din care se selectează datele. Este, de asemenea, un cuvânt cheie obligatoriu. |
Aceasta este așa-numita sintaxă "scurtă" a operatorului, dar ne indică faptul că fără cuvintele cheie Select și din DBMS interogarea noastră nu va fi executată.
Sintaxa completă a operatorului este prezentată în figura următoare:
Aici, clauza "Dacă" vă permite să perfecționați căutarea specificând o condiție.
Pentru a grupa valorile și a le aplica o funcție agregată, se folosește clauza Grup după, iar pentru a rafina rezultatul după grupare, se folosește propoziția După.
Ordinea va permite să sortați valorile coloanelor selectate în ordine ascendentă sau descendentă.
Pentru a înțelege mai bine declarația Select, să presupunem că baza noastră de date are următorul tabel Pisici cu informațiile:
id-ul | rasă | nume | zi de naștere | culoare |
1 | coadă tăiată | lord | 04/01/2017 | gri |
2 | Curl | fentă | 03/16/2017 | alb |
3 | Mau | panteră | 03/30/2017 | negru |
4 | coadă tăiată | Tyson | 02/23/2017 | gri |
5 | burmilla | Athena | 08/01/2017 | negru |
Fiecare rând al tabelului conține numărul unic al pisoiului, rasa sa, porecla, data nașterii și culoarea. Apoi, vom analiza modul în care funcționează operatorul Select (SQL), pe baza datelor din acest tabel.
Cum se selectează datele dintr-un tabel
După cum sa discutat mai sus, cuvintele cheie sunt întotdeauna folosite pentru a selecta informațiile potrivite din tabel.
După ce ați selectat cuvântul cheie, sunt specificate coloanele pentru ieșire. Puteți face o listă cu coloanele necesare, separate printr-o virgulă, atunci întreaga structură va arăta astfel:
Selectați culoarea, rasa, numele De la pisici |
După cum puteți vedea, putem aranja coloanele în ordinea în care sunt necesare. În plus, putem afișa numai coloanele de care avem nevoie.
Există, de asemenea, o intrare scurtă pentru vizualizarea tuturor coloanelor din tabel. Pentru a face acest lucru, după selectare, un asterisc (*) este indicat cu un spațiu. Întregul design va arăta astfel:
Selectați * De la pisici |
Rezultatul interogării de mai sus este întreaga tabelă Cats, prezentată așa cum apare la sfârșitul ultimei secțiuni.
Mulți oameni sunt interesați de modul de plasare a rezultatelor unei runde în SQL Selectați într-un șir. Cel mai adesea acest lucru este necesar atunci când este necesar să se combine numele, numele și patronimicul persoanei, plasate în coloane separate.
În cazul nostru, combinăm rasa și culoarea pisicilor din pisicile de masă. Nuanța este că DBMS diferite utilizează caractere diferite pentru concatenarea șirului. În unele cazuri, acesta este pur și simplu un plus (+), în altele - o linie dublă (||) sau o ampersand (), uneori operatorul Concat este folosit. Prin urmare, înainte de a fuziona, trebuie să citiți adnotarea în schema specială cu care lucrați.
Selectați rasa || lsquo-, rsquo- || culoare De la pisici |
Rezultatul este următorul:
Rasă, Culoare |
Bobtail, Gray |
Curl, alb |
Mau, negru |
Bobtail, Gray |
Burmilla, Negre |
Eliminarea datelor redundante
Funcție distinctă - Selectați (SQL), care permite excluderea duplicării liniilor absolut identice din rezultatul selecției.
De exemplu, vrem să aflăm care pisici sunt în tabelul nostru. Dacă folosim o interogare simplă:
Selectați rasa De la pisici |
Că vom primi un rezultat destul de așteptat:
rasă |
coadă tăiată |
Curl |
Mau |
coadă tăiată |
burmilla |
După cum puteți vedea, rasa Bobtail este duplicată de două ori. Argumentul Distinct va elimina duplicarea, este suficient doar să completați interogarea:
Selectați o rasă distinctă De la pisici |
Rafinați-vă interogarea
În realitate, aproape nici o interogare nu trimite date ca un set complet de rânduri de tabele. Să luăm în considerare, ce teză din Select (SQL) va permite să setați criteriile pentru selectarea numai a liniilor necesare.
Aici este locul. În această teză se utilizează un predicat - o expresie condiționată care dă ieșire valoarea "adevărată" sau "falsă". Instrucțiunea Select recuperează numai acele date din tabelul pentru care expresia condiționată va fi True sau "true".
Acesta va ajuta să rezolve cu acest design un eșantion simplu. Să presupunem că vrem să știm totul despre pisicile de culoare neagră.
Selectați * De la pisici Unde culoare = lsquo-negru ` |
Rezultatul acestei interogări va fi următoarele rânduri din tabel:
3 | Mau | panteră | 03/30/2017 | negru |
5 | burmilla | Athena | 08/01/2017 | negru |
De asemenea, puteți combina condițiile utilizând operatorii And, Or, și Not logic.
Grupați prin
Clauza de grup, folosită în Select (SQL), vă permite să grupați interogările cu valoarea unei anumite coloane (sau coloane) și apoi să le aplicați funcția agregată.
Funcțiile agregate includ:
- Count - calculează numărul de rânduri selectate de interogare.
- Suma este suma aritmetică a tuturor valorilor selectate ale coloanelor.
- Min - imprimă minimul valorilor coloanelor selectate.
- Max - respectiv, valorile maxime ale coloanelor selectate.
- Avg este media.
Schema acestei propuneri este ușor de înțeles pe un exemplu concret. Să spunem că vrem să știm cât de multe pisoi din fiecare rasă avem. Pentru aceasta, trebuie să generați următoarea interogare simplă:
Selectați rasa, numărul (*) De la pisici Grupează după rasă |
Rezultatul este următorul tabel:
rasă | conta |
coadă tăiată | 2 |
Curl | 1 |
Mau | 1 |
burmilla | 1 |
După cum puteți vedea, avem două pisoi Bobtail, restul fiind doar unul. În practică, pentru o astfel de solicitare, bazată pe tabelul nostru, crescătorul poate înțelege care dintre rasele de pisici sunt solicitate în rândul cumpărătorilor și care nu sunt.
Este probabil ca din cauza numărului mare de intrări în masa reală, va fi totuși necesar să se clarifice interogarea și să se retragă numai acele rase de pisoi, care nu mai sunt lăsate, de exemplu, zece. Pentru a rafina sau filtra grupuri, utilizați instrucțiunea Have. Vă permite să renunțați la anumite grupuri, asemănătoare cu clauza Where, care elimină rânduri individuale. Condiția este dată de funcția agregată. Adăugăm interogarea:
Selectați rasa, numărul (*) De la pisici Grupează după rasă Numărătoare (*) <= 10 |
Din moment ce condiția am stabilit "numărul de pisoi din fiecare rasă nu este mai mare de 10", rezultatul este același ca în exemplul fără caietul de sarcini. Dar aici este important să înțelegem chiar schema de lucru a propunerii având. Dar dacă schimbați condiția logică la A numărând (*) = 1, atunci rezultatul va fi redus la trei rânduri și va ieși rasa de pisoi, care este doar una rămasă.
triere
Să ne familiarizăm cu Ordinea după - sugestia operatorului Select (SQL), care ne permite să sortăm liniile de ieșire prin creșterea sau micșorarea valorilor într-una sau mai multe coloane.
Este important să ne amintim că Ordinul este ultima propoziție a întregului construct al instrucțiunii Select. Acesta este plasat după selectare, de la, unde, grup, prin, având.
La sortare, există trei puncte importante:
1) Puteți specifica orice număr de coloane, fiecare dintre acestea putând fi sortate individual fie ascendent (ASC) fie descendent (DESC).
2) Toate coloanele specificate în clauza de ordin trebuie să fie prezente printre coloanele selectate din Selectare.
3) Nu este necesar să specificați anumite nume de coloane pentru sortare, puteți să le specificați pur și simplu numerele lor, sub care vor merge în instrucțiunea Select.
Sperăm că, cu ajutorul acestui articol, ați primit cunoștințe de bază despre utilizarea interogărilor SQL și puteți selecta cu ușurință informațiile necesare din DBMS.
- SQL distinct: descriere, exemple, proprietăți
- Coalesce sql: descriere, utilizare, exemple
- Între SQL: exemple, descriere
- Cuvinte cheie `Yandex` - ajutor în promovarea site-ului
- One Touch Select Glucometer: denumire, descriere, specificații
- Cum se compun interogările SQL - exemple detaliate
- JS foreach obiect ca design variante
- MySQL selectați selectați: operatorul de eșantionare
- HAVING SQL: descriere, sintaxă, exemple
- "Capcane" de comenzi DML Actualizați MySQL
- SQL unde: metode de aplicare și exemple
- Instrucțiunea SQL INNER JOIN: exemple, sintaxă și caracteristici
- Cum se sortează SQL?
- Ce face funcția SQL CONCAT?
- Funcția de creare a unui tabel în SQL - Crearea tabelului
- Crearea pas cu pas a unui tabel SQL
- Funcția SQL SUBSTRING
- Crearea interogărilor în Access. Tipuri de cereri
- Funcția de sumare în SQL: SUM
- Declarați SQL: descriere. Transact-SQL
- Selectați înregistrări unice în interogarea MySQL: selectați distinct