MySQL Istruzione SELECT con esempi

In cosa consiste la query SELECT MySQL?

SELECT QUERY viene utilizzato per recuperare i dati da MySQL database. I database memorizzano i dati per un recupero successivo. Lo scopo di MySQL Selezionare consiste nel restituire dalle tabelle del database, una o più righe che corrispondono a un determinato criterio. La query di selezione può essere utilizzata in un linguaggio di scripting come PHP, Ruby oppure è possibile eseguirla tramite il prompt dei comandi.

SELEZIONA query in MySQL

Sintassi dell'istruzione SQL SELECT

È il comando SQL più frequentemente utilizzato e ha la seguente sintassi generale

SELECT [DISTINCT|ALL ] { * | [fieldExpression [AS newName]} FROM tableName [alias] [WHERE condition][GROUP BY fieldName(s)]  [HAVING condition] ORDER BY fieldName(s)

QUI

  • SELEZIONA è la parola chiave SQL che consente al database di sapere che desideri recuperare i dati.
  • [DISTINTO | TUTTO] sono parole chiave facoltative che possono essere utilizzate per ottimizzare i risultati restituiti dall'istruzione SQL SELECT. Se non viene specificato nulla, viene assunto ALL come impostazione predefinita.
  • {*| [fieldExpression [AS newName]} deve essere specificata almeno una parte, "*" ha selezionato tutti i campi dal nome della tabella specificata, fieldExpression esegue alcuni calcoli sui campi specificati come l'aggiunta di numeri o l'unione di due campi stringa in uno solo.
  • DA tableName è obbligatorio e deve contenere almeno una tabella, più tabelle devono essere separate tramite virgole o unite utilizzando la parola chiave JOIN.
  • DOVE La condizione è facoltativa e può essere utilizzata per specificare i criteri nel set di risultati restituito dalla query.
  • RAGGRUPPA PER viene utilizzato per mettere insieme i record che hanno gli stessi valori di campo.
  • VISTA La condizione viene utilizzata per specificare i criteri quando si utilizza la parola chiave GROUP BY.
  • ORDINATO DA viene utilizzato per specificare l'ordinamento del set di risultati.

*

Il simbolo Stella viene utilizzato per selezionare tutte le colonne della tabella. Un esempio di una semplice istruzione SELECT è simile a quello mostrato di seguito.

SELECT * FROM `members`;

L'istruzione precedente seleziona tutti i campi dalla tabella dei membri. Il punto e virgola è un'istruzione terminata. Non è obbligatorio ma è considerata una buona pratica terminare le tue affermazioni in questo modo.

Esempi pratici

Clicca per scaricare il DB myflix utilizzato per esempi pratici.

Puoi imparare a importare il file .sql in MySQL Banco di lavoro

Gli esempi vengono eseguiti sulle due tabelle seguenti

Tabella 1: Persone tavolo

numero_iscrizione nomi_completi genere data di nascita indirizzo fisico indirizzo postale contatto_numero email
1 Janet Jones Femmina 21-07-1980 Primo lotto di strada n. 4 Borsa privata 0759 253 542 janetjones@yagoo.cm
2 Janet Smith Jones Femmina 23-06-1980 Melrose 123 NULL NULL jj@fstreet.com
3 Roberto Fil Maschio 12-07-1989 3a strada 34 NULL 12345 rm@tstreet.com
4 Gloria Williams Femmina 14-02-1984 2a strada 23 NULL NULL NULL

Tabella 2: film tavolo

id_film titolo direttore anno_rilasciato categoria_id
1 Pirati dei Caraibi 4 Rob Marshall 2011 1
2 Dimenticando Sarah Marshal Nicholas Stoller 2008 2
3 X-Men NULL 2008 NULL
4 Nome in codice Nero Edgar Jimz 2010 NULL
5 Le bambine di papà NULL 2007 8
6 Angeli e Demoni NULL 2007 6
7 Codice Davinci NULL 2007 6
9 Honey lunari John Schutz 2005 8
16 67% colpevole NULL 2012 NULL

Ottenere l'elenco dei membri

Supponiamo di voler ottenere un elenco di tutti i membri della biblioteca registrati dal nostro database, per farlo utilizzeremo lo script mostrato di seguito.

SELECT * FROM `members`;

Eseguendo lo script precedente in MySQL workbench produce i seguenti risultati.

numero_iscrizione nomi_completi genere data di nascita indirizzo fisico indirizzo postale contatto_numero email
1 Janet Jones Femmina 21-07-1980 Primo lotto di strada n. 4 Borsa privata 0759 253 542 janetjones@yagoo.cm
2 Janet Smith Jones Femmina 23-06-1980 Melrose 123 NULL NULL jj@fstreet.com
3 Roberto Fil Maschio 12-07-1989 3a strada 34 NULL 12345 rm@tstreet.com
4 Gloria Williams Femmina 14-02-1984 2a strada 23 NULL NULL NULL

La nostra query precedente ha restituito tutte le righe e le colonne dalla tabella dei membri.

Diciamo che siamo interessati solo a ottenere i campi full_names, gender, physical_address ed email. Il seguente script ci aiuterebbe a raggiungere questo obiettivo.

SELECT `full_names`,`gender`,`physical_address`, `email` FROM `members`;

Eseguendo lo script precedente in MySQL workbench produce i seguenti risultati.

nomi_completi genere indirizzo fisico email
Janet Jones Femmina Primo lotto di strada n. 4 janetjones@yagoo.cm
Janet Smith Jones Femmina Melrose 123 jj@fstreet.com
Roberto Fil Maschio 3a strada 34 rm@tstreet.com
Gloria Williams Femmina 2a strada 23 NULL

Ottenere l'elenco dei film

Ricordate che nella nostra discussione precedente abbiamo menzionato le espressioni utilizzate nelle istruzioni SELECT. Diciamo che vogliamo ottenere un elenco di film dal nostro database. Vogliamo avere il titolo del film e il nome del regista in un campo. Il nome del regista dovrebbe essere tra parentesi. Vogliamo anche ottenere l'anno di uscita del film. Il seguente script ci aiuta a farlo.

SELECT Concat(`title`, ' (', `director`, ')') , `year_released` FROM `movies`;

QUI

  • Il Concat () MySQL viene utilizzata la funzione per unire insieme i valori delle colonne.
  • La riga “Concat (`title`, ' (', `director`, ')') ottiene il titolo, aggiunge una parentesi di apertura seguita dal nome del regista, quindi aggiunge la parentesi di chiusura.

Le porzioni di stringa vengono separate utilizzando virgole nella funzione Concat ().

Eseguendo lo script precedente in MySQL workbench produce il seguente set di risultati.

Concat(`titolo`, ' (', `direttore`, ')') anno_rilasciato
Pirati dei Caraibi 4 (Rob Marshall) 2011
Dimenticando Sarah Marshal (Nicholas Stoller) 2008
NULL 2008
Nome in codice Nero (Edgar Jimz) 2010
NULL 2007
NULL 2007
NULL 2007
Honey lunari (John Schultz) 2005
NULL 2012

Nomi dei campi alias

L'esempio precedente ha restituito il codice Concatenation come nome di campo per i nostri risultati. Supponiamo di voler usare un nome di campo più descrittivo nel nostro set di risultati. Per ottenere ciò, useremmo il nome alias di colonna. Di seguito è riportata la sintassi di base per il nome alias di colonna

SELECT `column_name|value|expression` [AS] `alias_name`;

QUI

  • "SELECT ` nome_colonna|valore|espressione `" è l'istruzione SELECT regolare che può essere un nome di colonna, un valore o un'espressione.
  • "[COME]" è la parola chiave facoltativa prima del nome alias che denota l'espressione, il valore o il nome del campo con cui verrà restituito.
  • “`nome_alias`” è il nome alias che vogliamo restituire nel nostro set di risultati come nome del campo.

La query precedente con un nome di colonna più significativo

SELECT Concat(`title`, ' (', `director`, ')') AS 'Concat', `year_released` FROM `movies`;

Otteniamo il seguente risultato

Concat anno_rilasciato
Pirati dei Caraibi 4 (Rob Marshall) 2011
Dimenticando Sarah Marshal (Nicholas Stoller) 2008
NULL 2008
Nome in codice Nero (Edgar Jimz) 2010
NULL 2007
NULL 2007
NULL 2007
Honey lunari (John Schultz) 2005
NULL 2012

Ottenere l'elenco dei membri che mostra l'anno di nascita

Supponiamo di voler ottenere un elenco di tutti i membri che mostra il numero di iscrizione, i nomi completi e l'anno di nascita, possiamo usare la funzione stringa LEFT per estrarre l'anno di nascita dal campo data di nascita. Lo script mostrato di seguito ci aiuta a farlo.

SELECT `membership_number`,`full_names`,LEFT(`date_of_birth`,4) AS `year_of_birth` FROM members;

QUI

  • “SINISTRA(`data_di_nascita`,4)” , il Funzione stringa SINISTRA accetta la data di nascita come parametro e restituisce solo 4 caratteri da sinistra.
  • “COME `anno_di_nascita`” Europe è nome alias della colonna che verrà restituito nei nostri risultati. Notare la La parola chiave AS è facoltativa, puoi tralasciarlo e la query continuerà a funzionare.

Eseguendo la query precedente in MySQL workbench contro myflixdb ci fornisce i risultati mostrati di seguito.

numero_iscrizione nomi_completi anno di nascita
1 Janet Jones 1980
2 Janet Smith Jones 1980
3 Roberto Fil 1989
4 Gloria Williams 1984

SQL utilizzando MySQL banco di lavoro

Ora useremo MySQL workbench per generare lo script che visualizzerà tutti i nomi dei campi dalla nostra tabella delle categorie.

1. Fare clic con il tasto destro sulla tabella delle categorie. Fare clic su “Seleziona righe – Limite 1000”

2. MySQL workbench creerà automaticamente una query SQL e la incollerà nell'editor.

3. Verranno visualizzati i risultati della query

SQL utilizzando MySQL banco di lavoro

Si noti che non abbiamo scritto noi stessi l'istruzione SELECT. MySQL workbench lo ha generato per noi.

Perché utilizzare il comando SELECT SQL quando abbiamo MySQL Banco di lavoro?

Ora, potresti pensare perché imparare il comando SQL SELECT per interrogare i dati dal database quando puoi semplicemente utilizzare uno strumento come MySQL workbench per ottenere gli stessi risultati senza la conoscenza del linguaggio SQL. Certo che è possibile, ma imparare a usare il comando SELECT ti dà di più flessibilità e di controllo sopra il tuo Istruzioni SQL SELECT.

MySQL il banco da lavoro rientra nella categoria “Interrogazione per esempio“Strumenti QBE. Ha lo scopo di aiutare a generare istruzioni SQL più velocemente per aumentare la produttività dell'utente.

Imparare il comando SQL SELECT può consentirti di creare interrogazioni complesse che non può essere facilmente generato utilizzando le utilità Query by example come MySQL banco di lavoro.

Per migliorare la produttività puoi generare il codice utilizzando MySQL banco di lavoro poi personalizzare ad soddisfare le vostre esigenze. Questo può accadere solo se capisci come funzionano le istruzioni SQL!

MySQL Istruzione SELECT con esempi

Sintesi

  • La parola chiave SQL SELECT viene utilizzata per interrogare i dati dal database ed è il comando più comunemente utilizzato.
  • La forma più semplice ha la sintassi “SELECT * FROM tableName;”
  • Le espressioni possono essere utilizzate anche nell'istruzione select. Esempio “SELEZIONA quantità + prezzo DA Vendite”
  • Il comando SQL SELECT può avere anche altri parametri opzionali come WHERE, GROUP BY, HAVING, ORDER BY. Saranno discussi più avanti.
  • MySQL workbench può aiutare a sviluppare istruzioni SQL, eseguirle e produrre il risultato di output nella stessa finestra.

Riassumi questo post con: