Corso SQL e Database relazionali

corso sql e database

L’SQL è una competenza chiave in praticamente tutti i settori dell’informatica: da figure specifiche come il database developer, a quelle strettamente legate al mondo dei dati (data engineer, data scientist, ecc…) ad altre legate alla programmazione web o alla gestione di applicativi finanziari e gestionali. La domanda “sai scrivere una query?” è ormai un must-have nella maggior parte dei colloqui tecnici di lavoro. Dopo il corso potrai rispondere con un sì convinto, imparando a programmare in SQL e a scrivere query in modo corretto e fluente.

Il mio obiettivo sarà quello di insegnarti a interrogare, aggiornare e gestire correttamente e con dimestichezza un database relazionale. Partiremo dalle basi, spiegando che cos’è un database relazionale, cosa lo caratterizza e perché è diverso da altri strumenti di analisi dei dati come Microsoft Excel. Ma le spiegazioni teoriche dureranno davvero poco. Inizieremo infatti sin da subito a programmare insieme, sperimentare, fare esercitazioni “real world” su problematiche all’ordine del giorno per ogni professionista che si interfaccia con i database, partendo dalle query più semplici fino ad arrivare a situazioni complesse. Simuleremo di ricevere mail urgenti dal capo (non sempre chiarissime) che ci permetteranno di mettere in pratica quanto imparato. Vi racconterò tutti gli errori che ho fatto durante i miei primi anni di sviluppatore SQL, in modo da mettervi in guardia sui tranelli in cui è facile cadere quando si ha poca esperienza.

Durante il corso potremmo utilizzare i principali RDBMS (Relational Database Management System) tra cui Oracle, Sql Server, MySql e Access evidenziando sia le strutture e i paradigmi standard nell’utilizzo dell’SQL e sia le particolarità di ogni specifico prodotto. Evidenzieremo la natura english-like e dichiarativa del linguaggio e impareremo a scrivere query performanti ed efficienti.

 

Il programma del corso SQL: cosa impareremo

All’inizio avremo bisogno di creare un po’ di lessico comune. Risponderemo essenzialmente a queste domande:

  • cos’è un database;
  • cos’è un database relazionale;
  • cos’è un database non relazionale;
  • cos’è una tabella;
  • con quale linguaggio di programmazione creo, aggiorno e interrogo le tabelle.

A questo punto inizieremo a scrivere le prime query utilizzando le tre parole chiave principali dell’SQL:

  • la SELECT per specificare le colonne che vogliamo visualizzare;
  • la FROM per indicare la tabella contenente le informazioni;
  • la WHERE per visualizzare solo la porzione di dati che ci interessa.

Per quanto all’apparenza sembrerà tutto facile, vi spiegherò come anche in questi casi è possibile compiere degli errori se non si è opportunamente formati: impareremo a gestire correttamente le date e gli intervalli di date, i valori null, a prendere coscienza di quanto è importante per lo sviluppatore SQL conoscere la struttura del database che sta interrogando per non incorrere in gravi errori. Il tutto con esempi pratici, raccolti dalla mia esperienza sul campo e dagli errori emersi nei numerosi corsi che ho tenuto.

join tra tabelle

Appena avremo consolidato questa parte, inizieremo a rispondere a domande più complesse in cui le informazioni sono dislocate in più di una tabella. Per far questo dovremo imparare a scrivere le Join. Anche questa attività, per quanto all’inizio sembrerà semplice, nasconde molte insidie perché, se non poniamo le dovute attenzioni, ci troveremo involontariamente a restituire informazioni parziali oppure, ancor peggio, duplicate.

Superato l’ostacolo delle join, dobbiamo imparare come replicare in modo semplice e veloce con l’SQL quelle che sono le tabelle pivot di Excel. Sarà dunque giunto il momento di introdurre la parola chiave GROUP BY e le principali funzioni di aggregazione come SUM, AVG e COUNT. Dopo aver imparato la mia regola d’oro

“copio e incollo nella select ciò che ho scritto nella group by e aggiungo soltanto funzioni di aggregazione

integreremo la GROUP BY con l’istruzione HAVING e impareremo a rispondere con disinvoltura a domande del tipo:

  • estrai il numero di clienti per ogni regione;
  • calcola il fatturato diviso per anno e mese;
  • riporta le regioni in cui abbiamo fatturato più di 10000 euro nel primo trimestre del 2021, considerando soltanto i prodotti di Tipologia A.

A questo punto padroneggeremo tutta la sintassi di base per interrogare le tabelle di un database relazionale: Select, From, Join, Where, Group by ed Having. Impareremo a questo punto a non fare l’errore dei principianti di “voler fare tutto in un’unica complicatissima query”. Capiremo che per rispondere a domande complesse non serve scrivere query complesse, ma suddividere la domanda in tanti step più semplici, implementarli singolarmente con la sintassi di base dell’SQL e “unire i pezzi” tramite l’utizzo di CTE, subquery o tabelle temporanee.

A questo punto avremo i mezzi e la consapevolezza necessaria per affrontare con disinvoltura nuovi argomenti:

  • le clausole TOP e ORDER BY;
  • le funzioni principali e il CASE WHEN;
  • come passare dall’interrogazione all’aggiornamento di un database.

 

Imparare a progettare e creare un database

Nella prima metà del corso lavoreremo su dei database creati ad hoc da me, per riprodurre tutte le casistiche e le problematiche di un vero ambiente di lavoro. Una volta padroneggiate le tecniche per interrogare un database preesistente, sarà arrivato il momento di imparare a progettare e creare uno autonomamente. Vedremo quanto sia cruciale la parte di progettazione di un database, scegliere correttamente i tipi delle colonne, creare i vincoli di chiave primaria, chiave esterna e check.

Impareremo i principi della normalizzazione e della progettazione fisica, analizzando gli impatti della creazione degli indici sulle performance di una query, oltre a tutta la sintassi di base che comprende le istruzioni CREATE, ALTER, DROP e TRUNCATE.

 

Project Work finale

Concluderemo il corso con un Project Work pratico in cui ci metteremo alla prova su un progetto di analisi dei dati con l’SQL e i database relazionali, in tutto e per tutto simile alle sfide che affronteremo quotidianamente a lavoro.

 

Un esempio di cosa imparerai nel corso SQL

Informazioni generali

Modalità di erogazione: in diretta streaming con software di videoconferenza

Durata edizione one-to-one (lezioni ristrette ad un solo partecipante): 24 ore

Costo edizione one-to-one (lezioni ristrette ad un solo partecipante): 1080€

Durata edizione aziendale (lezioni per partecipanti della stessa azienda): da definire in una call

Costo edizione aziendale (lezioni per partecipanti della stessa azienda): 60€/h

Data di partenza del corso: entro un mese circa dalla richiesta

Calendario: concordato con lo studente o l’azienda

Possibilità di registrare le lezioni per uso didattico:

Prerequisiti: PC con sistema operativo Windows, non sono richieste competenze pregresse.

Tutti i prezzi di questa pagina sono esenti iva (iva allo 0%) in quanto erogati nell’ambito del regime fiscale forfettario.

 

Contattami

CAPTCHA immagine

Questo ci aiuta a prevenire lo spam, grazie.

Scroll to Top
Torna su