SQL: correlazione

Nel linguaggio SQL è possibile condizionare l’esecuzione di una query in base ai valori delle tuple che si stanno analizzando. Questo comportamento si definisce mediante la correlazione, ossia condizioni nella clausola WHERE di una query nidificata che si riferiscono ad attributi delle tabelle della query esterna. Mediante alcuni esempi scopriremo quali operatori usano questo costrutto, come definire opportunamente le correlazioni e la sue alternative.
SQL: CTE

Esprimere in linguaggio SQL query complesse può risultare veramente difficile. Dividere il problema in mini interrogazioni è la strategia migliore per ottenere velocemente i risultati sperati senza incorrere in errori. Le Common Table Expression, chiamate anche CTE, permettono di definire una sola volta le query di nostro interesse da riutilizzare più volte quando è necessario. La loro sintassi pulita aumenta la leggibilità degli script SQL, permette di debuggare il codice scritto e di creare logiche molto complesse per filtrare ed estrarre i dati. Mediante alcuni esempi scopriremo le loro potenzialità.
SQL: tabelle derivate

In alcuni contesti è necessario calcolare dei risultati intermedi su cui poi effettuare ulteriori operazioni, quali filtraggio, raggruppamento e calcolo misure aggregate. Il linguaggio SQL ci permette di far ciò mediante la definizione delle tabelle derivate, ossia istruzioni SELECT definite all’interno della clausola FROM. Mediante alcuni esempi scopriremo come usarle in modo opportuno.
SELECT: operatori insiemistici

Talvolta si ha la necessità si operare sui risultati di diverse query come se fossero degli insiemi. Non dobbiamo usare un linguaggio di programmazione per fare queste operazioni sui dati, ma possiamo usare dei costrutti del linguaggio SQL. Gli operatori a disposizione ci permettono sia di unire che escludere i risultati due insiemi, oltre a definire l’intersezione. Con alcuni esempi capiremo come usare questi costrutti in modo appropriato.
SELECT: operatore NOT IN e costruttore di tupla

In alcuni casi si ha la necessità di escludere un insieme di valori da un altro insieme. Il linguaggio SQL ci permette di escludere i valori da escludere restituiti da una query nidificata mediante l’operatore NOT IN. Qualora gli elementi da escludere siano identificati da un insieme di attributi possiamo usare il costruttore di tupla. Con alcuni esempi capiremo come usare questi costrutti in modo appropriato.
SELECT: operatore IN

In alcuni casi scrivere query SQL può risultare veramente complesso. La strategia del divide et impera, risulta sempre vincente perché ci permette di unire i risultati di due o più interrogazioni. Abbiamo, però, la necessità di usare dei costrutti particolari. Mediante le query nidificate ed in particolare dell’operatore IN questa operazione risulta semplice ed intuitiva.
SELECT: query con JOIN e GROUP BY

I database relazionali si basano su una modellazione che divide i concetti che vogliamo rappresentare in diverse tabelle. Quando, però, li usiamo in contesti applicativi reali dobbiamo ricostruire queste operazioni e, a volte, definire sottoinsiemi di dati per calcolare statistiche. Come possiamo farlo nel linguaggio SQL? Mediante le clausole di JOIN e GROUP BY! Scopriamo come scriverle mediante esempi pratici.
SELECT: struttura di una query semplice

L’istruzione SELECT nel linguaggio SQL è quella forse più utilizzata in quanto ci permette di recuperare le informazioni di interesse dal database. La sua sintassi è semplice e ben strutturata ma bisogna conoscere alcuni vincoli che si nascondo dietro ogni clausola dell’istruzione. Mediante alcuni esempi scopriremo come scrivere query semplici ma allo stesso tempo utili in un contesto reale.
SQL: transazioni e manipolazione dei dati

I database forniscono un ottimo strumento per immagazzinare grandi moli di dati. Ma come facciamo a scrivere i dati correttamente al suo interno? Esistono dei meccanismi che ci assicurano che i dati siano corretti? Scopriamo cosa sono le transazioni e le lore proprietà, oltre ai comandi base per manipolare i dati.
SQL: creazione di un database

I database relazionali ricoprono un ruolo fondamentale nella progettazione e sviluppo di qualsiasi applicativo software. Imparare a modellare ed interrogare un database oltre a manipolare opportunamente i dati mediante il linguaggio SQL è alla portata di tutti. Iniziamo a scoprire alcune caratteristiche di questo linguaggio mediante le istruzioni per creare un database e definire le tabelle che lo costituiscono.