La traduzione dell'abbreviazione SQL (strutturalmente parlandoquery organizzate) riflette il fatto che le query sono l'elemento più utilizzato in SQL. Selezionare le righe necessarie, escludere automaticamente i dati ridondanti, saltare o riordinare le colonne aiuterà Select (SQL) - un operatore che dice al DBMS di produrre determinate informazioni.

seleziona sql

Sintassi dell'operatore

Per utilizzare correttamente qualsiasi operatore,Innanzitutto, è necessario familiarizzare con la sintassi del linguaggio di programmazione. Quando parliamo specificamente del linguaggio SQL, Select (operator) ha la seguente sintassi:

selezionare

Dice al database che stiamo trasmettendo la richiesta. Questa è la parola chiave.

Uno, due, tre ...

Elenco di colonne per l'output

da

Indica il nome della tabella da cui selezionare i dati. È anche una parola chiave obbligatoria.

Questa è la cosiddetta sintassi "breve" dell'operatore, ma ci indica che senza le parole chiave Select e dal DBMS, la nostra query non verrà eseguita.

La sintassi completa dell'operatore è mostrata nella seguente figura:

seleziona la dichiarazione di sql

Qui, la clausola Where consente di affinare la ricerca specificando una condizione.

Per raggruppare i valori e applicare loro una funzione di aggregazione, viene utilizzata la clausola Group by e per rifinire il risultato dopo il raggruppamento viene utilizzata la proposta Having.

Ordina per consentirà di ordinare i valori delle colonne selezionate in ordine crescente o decrescente.

Per comprendere meglio l'istruzione Select, immaginiamo che il nostro database abbia la seguente tabella Gatti con le informazioni:

Id

razza

nome

compleanno

colore

1

coda mozza

signore

01.04.2017

grigio

2

Curl

finta

16.03.2017

bianco

3

Mau

pantera

30.03.2017

nero

4

coda mozza

Tyson

23.02.2017

grigio

5

Burmilla

Athena

08.01.2017

nero

Ogni riga della tabella contiene un numero univocogattino, la sua razza, soprannome, data di nascita e colorazione. Successivamente, considereremo come funziona l'operatore Select (SQL), in base ai dati di questa tabella.

Come selezionare i dati da una tabella

Come discusso sopra, le parole chiave vengono sempre utilizzate per selezionare le informazioni giuste dalla tabella.

Dopo la parola chiave Select, vengono specificate le colonne per l'output. Puoi fare una lista delle colonne richieste separate da una virgola, quindi l'intera struttura sarà simile a questa:

Seleziona colore, razza, nome

Dai gatti

Come puoi vedere, possiamo organizzare le colonne nell'ordine in cui sono necessarie. Inoltre, possiamo visualizzare solo le colonne di cui abbiamo bisogno.

C'è anche una breve voce per visualizzare tutte le colonne nella tabella. Per fare ciò, dopo la selezione, un asterisco (*) viene indicato con uno spazio. L'intero design sarà simile a questo:

Seleziona *

Dai gatti

Il risultato della query precedente è l'intera tabella Cats, presentata come appare alla fine dell'ultima sezione.

Molti sono interessati a come posizionarerisultati dell'esecuzione in SQL Selezionare in una stringa. Molto spesso questo è richiesto quando è necessario combinare il cognome, il nome e il patronimico della persona, posti in colonne separate.

Nel nostro caso, combineremo la razza e il colore dei gatti dala tabella dei gatti. La sfumatura è che diversi DBMS usano caratteri diversi per la concatenazione di stringhe. In alcuni casi, questo è semplicemente un plus (+), in altri: una doppia linea (||) o una e commerciale (&), a volte viene utilizzato un operando Concat. Pertanto, prima di unire, è necessario leggere l'annotazione sul particolare DBMS con cui si sta lavorando.

Seleziona razza || ',' || colore

Dai gatti

Il risultato è il seguente:

Razza, colore

Bobtail, grigio

Curl, bianco

Mau, nero

Bobtail, grigio

Burmilla, nero

Eliminazione di dati ridondanti

sql select language

Distinct - function Select (SQL), che consente di escludere la duplicazione di linee assolutamente identiche dal risultato della selezione.

Ad esempio, vogliamo scoprire quali gatti sono nella nostra tabella. Se usiamo una query semplice:

Seleziona razza

Dai gatti

Che riceveremo un risultato abbastanza atteso:

razza

coda mozza

Curl

Mau

coda mozza

Burmilla

Come puoi vedere, la razza Bobtail è duplicata due volte. Argument Distinct eliminerà la duplicazione, è sufficiente solo per completare la query:

Seleziona razza distinta

Dai gatti

Affina la tua richiesta

In realtà, quasi nessuna query restituisce i dati come un set completo di righe di tabella. Consideriamo, quale frase in Select (SQL) consentirà di impostare i criteri per selezionare solo le righe necessarie.

Questo è doveIn questa frase, viene utilizzato un predicato: un'espressione condizionale che fornisce all'output il valore "true" o "false". L'istruzione Select recupera solo quei dati dalla tabella per cui l'espressione condizionale sarà True o "true".

Aiuterà a risolvere questo progetto con un semplice esempio. Diciamo che vogliamo sapere tutto sui gatti di colore nero.

Seleziona *

Dai gatti

Dove color = 'Black'

Il risultato di questa query sarà le seguenti righe della tabella:

3

Mau

pantera

30.03.2017

nero

5

Burmilla

Athena

08.01.2017

nero

Puoi anche combinare le condizioni usando gli operatori di logica And, Or e Not.

Raggruppa per

La clausola Group by, utilizzata in Select (SQL), consente di raggruppare le query in base al valore di una particolare colonna (o colonne) e quindi di applicare loro la funzione di aggregazione.

Le funzioni aggregate includono:

  • Conta: calcola il numero di righe selezionate dalla query.
  • Somma è la somma aritmetica di tutti i valori di colonna selezionati.
  • Min: stampa il minimo dei valori di colonna selezionati.
  • Max - rispettivamente, il massimo dei valori di colonna selezionati.
  • Medio è la media

Lo schema di questa proposta è il più semplicecapire con un esempio concreto. Diciamo che vogliamo sapere quanti gattini di ogni razza abbiamo. Per fare ciò, è necessario generare la seguente semplice query:

Seleziona razza, conta (*)

Dai gatti

Raggruppa per razza

Il risultato è la seguente tabella:

razza

contare

coda mozza

2

Curl

1

Mau

1

Burmilla

1

Come puoi vedere, abbiamo due gattini Bobtail,Il resto di tutti solo uno. In pratica, per una tale richiesta, basata sulla nostra tabella, l'allevatore può capire quali razze sono richieste dai compratori e quali no.

È probabile che a causa della grande quantitài record in una tabella reale vogliono chiarire la query e ritirare solo quelle razze di gattini, che non vengono più lasciati, ad esempio, dieci. Per perfezionare o filtrare i gruppi, utilizzare l'istruzione Avere. Ti consente di eliminare determinati gruppi, in modo simile alla clausola Where, che elimina le singole righe. La condizione è data dalla funzione aggregata. Aggiungiamo la query:

Seleziona razza, conta (*)

Dai gatti

Raggruppa per razza

Avere conteggio (*) <= 10

Poiché la condizione che impostiamo è "il numero di gattiniogni razza non è più di 10 ", quindi il risultato è lo stesso dell'esempio senza specifica. Ma qui è importante capire lo schema stesso del lavoro della proposta Avere. Ma se cambiamo la condizione logica in Conteggio (*) = 1, il risultato sarà ridotto a tre righe e restituirà la razza di gattini, che sono rimasti solo uno.

ordinamento

Facciamo conoscenza con Order by - il suggerimento dell'operatore Select (SQL), che ci consente di ordinare le linee di output aumentando o diminuendo i valori in una o più colonne.

seleziona la funzione sql

È importante ricordare che Order by è la frase finale dell'intero costrutto dell'istruzione Select. Viene posizionato dopo Seleziona, Da, Dove, Raggruppa per, Avere.

Durante l'ordinamento, ci sono tre punti importanti:

1) È possibile specificare un numero qualsiasi di colonne, ognuna delle quali può essere ordinata singolarmente ascendente (ASC) o discendente (DESC).

2) Tutte le colonne specificate nella clausola Order by devono essere presenti tra le colonne selezionate in Seleziona.

3) Non è necessario elencare i nomi di colonne specifici per l'ordinamento, è sufficiente specificare i loro numeri, sotto i quali vanno nella dichiarazione Select.

sql seleziona per stringa

Speriamo che con l'aiuto di questo articolo tu abbia ricevuto le conoscenze di base sull'utilizzo delle query SQL e ora puoi facilmente selezionare le informazioni necessarie dal tuo DBMS.