MySQL - Select Query
Ciao a tutti, futuri maghi dei database! Oggi ci immergeremo nel magico mondo delle query di selezione di MySQL. Come il vostro amico insegnante di computer del vicinato, sono qui per guidarvi in questa avventura, passo dopo passo. Non preoccupatevi se non avete mai scritto una riga di codice prima – inizieremo dai concetti di base e scaleremo di livello. Allora, afferrate le vostre bacchette virtuali (tastiere) e iniziamo!
Dichiarazione SELECT in MySQL
La dichiarazione SELECT è come un incantesimo nel mondo di MySQL. Ci permette di recuperare dati dalle nostre tabelle di database. Pensateci come se chiedessimo al genio del database di esaudire il vostro desiderio e mostrarvi le informazioni di cui avete bisogno.
Ecco la struttura di base di una dichiarazione SELECT:
SELECT colonna1, colonna2, ...
FROM nome_tabella;
Analizziamo questa struttura:
- SELECT: Questa parola chiave dice a MySQL che vuoi recuperare dati.
- colonna1, colonna2, ...: Questi sono i nomi delle colonne che vuoi visualizzare.
- FROM: Questa parola chiave specifica da quale tabella stai selezionando.
- nome_tabella: Questo è il nome della tua tabella.
Esempio 1: Selezionare Tutte le Colonne
SELECT * FROM dipendenti;
Questa query è come dire, "Mostrami tutto nella tabella dipendenti!" L'asterisco (*) è un character jolly che significa "tutte le colonne."
Esempio 2: Selezionare Colonne Specifiche
SELECT nome, cognome FROM dipendenti;
Questa query gentilmente chiede, "Potresti mostrarmi solo i nomi e i cognomi dalla tabella dipendenti?"
Recuperare Dati Usando SELECT da Prompt dei Comandi
Ora, immaginiamo di essere detective di database che usano il prompt dei comandi per interrogare il nostro database. Ecco come potreste farlo:
- Apri il tuo prompt dei comandi o terminale.
- Connettiti a MySQL (solitamente digitando
mysql -u username -p
e inserendo la tua password). - Seleziona il tuo database con
USE nome_database;
. - Ora sei pronto per eseguire le tue query SELECT!
Esempio 3: Recuperare Dati con una Condizione
SELECT nome, cognome FROM dipendenti WHERE dipartimento = 'Vendite';
Questa query è come chiedere, "Chi sono tutte le persone che lavorano nel dipartimento delle vendite?" La clausola WHERE ci aiuta a filtrare i nostri risultati.
Calcolare usando SELECT nel Prompt dei Comandi
SELECT non è solo per recuperare dati – può anche fare operazioni aritmetiche! Esploriamo un po' di magia aritmetica.
Esempio 4: Operazioni Aritmetiche di Base
SELECT nome_prodotto, prezzo, prezzo * 1.1 AS prezzo_con_iva FROM prodotti;
Questa query calcola il prezzo con un'IVA del 10%. La parola chiave AS crea un alias per la nostra nuova colonna.
Esempio 5: Usare Funzioni Incorporate
SELECT CONCAT(nome, ' ', cognome) AS nome_completo,
YEAR(CURDATE()) - YEAR(data_nascita) AS eta
FROM dipendenti;
Questa query combina i nomi e i cognomi e calcola le età. MySQL ha molte funzioni incorporate come CONCAT() per la manipolazione delle stringhe e funzioni di data.
Assegnare un Alias a una Colonna nella Dichiarazione SELECT
Assegnare un alias è come dare un soprannome alle tue colonne. È utile per la leggibilità e quando stai facendo calcoli.
Esempio 6: Semplice Assegnazione di Alias
SELECT nome AS nome_completo, email AS contatto FROM clienti;
Questa query rinomina la colonna 'nome' in 'nome_completo' e 'email' in 'contatto' nel risultato.
Esempio 7: Assegnazione di Alias con Espressioni
SELECT nome_prodotto,
prezzo AS prezzo_originale,
prezzo * 0.9 AS prezzo_scontato
FROM prodotti;
Qui stiamo mostrando il prezzo originale e calcolando un prezzo scontato del 10% con nomi di colonne facili da comprendere.
Query SELECT in un Database MySQL Utilizzando un Programma Client
Mentre la riga di comando è ottima per query rapide, molti sviluppatori preferiscono usare programmi client per una esperienza più user-friendly. Scelte popolari includono MySQL Workbench, phpMyAdmin e DBeaver.
Ecco come potresti usare un programma client:
- Connettiti al tuo database utilizzando l'interfaccia del client.
- Solitamente c'è un editor di query dove puoi scrivere il tuo SQL.
- Scrivi la tua dichiarazione SELECT ed eseguila.
Esempio 8: Usare una Clausola WHERE con Multiplici Condizioni
SELECT nome_prodotto, categoria, prezzo
FROM prodotti
WHERE categoria = 'Elettronica' AND prezzo < 500;
Questa query trova tutti i prodotti elettronici con un prezzo inferiore a $500. In un programma client, di solito vedresti i risultati in un gradevole formato tabellare.
Esempio 9: Ordinare i Risultati
SELECT nome, cognome, data_assunzione
FROM dipendenti
ORDER BY data_assunzione DESC
LIMIT 5;
Questa query mostra i cinque dipendenti assunti più di recente. La clausola ORDER BY ordina i risultati, e LIMIT limita il numero di righe restituite.
Tabella dei Metodi SELECT in MySQL
Ecco una comoda tabella che riassume alcuni metodi SELECT comuni:
Metodo | Descrizione | Esempio |
---|---|---|
SELECT * | Seleziona tutte le colonne | SELECT * FROM nome_tabella; |
SELECT colonna1, colonna2 | Seleziona colonne specifiche | SELECT nome, cognome FROM dipendenti; |
WHERE | Filtra righe in base a condizioni | SELECT * FROM prodotti WHERE prezzo > 100; |
ORDER BY | Ordina i risultati | SELECT * FROM clienti ORDER BY cognome ASC; |
LIMIT | Limita il numero di righe restituite | SELECT * FROM ordini LIMIT 10; |
DISTINCT | Restituisce solo valori unici | SELECT DISTINCT categoria FROM prodotti; |
GROUP BY | Raggruppa righe con valori uguali | SELECT categoria, COUNT(*) FROM prodotti GROUP BY categoria; |
HAVING | Specifica una condizione di ricerca per un gruppo | SELECT categoria, AVG(prezzo) FROM prodotti GROUP BY categoria HAVING AVG(prezzo) > 50; |
JOIN | Combina righe da due o più tabelle | SELECT ordini.order_id, clienti.customer_name FROM ordini JOIN clienti ON ordini.customer_id = clienti.id; |
Ricorda, la pratica rende perfetti! Non avete paura di sperimentare con queste query. Ogni volta che eseguite una query con successo, state migliorando le vostre abilità di database. Prima di sapere, sarete in grado di scrivere query complesse come un professionista!
Buon querying, e possa le vostre dichiarazioni SELECT sempre restituire i dati che cercate!
Credits: Image by storyset