Alcuni esercizi del corso Sviluppo su Database SQL Server

Esercizi database sqlLa prima edizione del corso “Sviluppo su Database Sql Server: preparazione esame 70-761” si è conclusa con successo. Tanti gli argomenti toccati e tantissime le domande degli studenti a cui abbiamo risposto! Abbiamo parlato di costrutti avanzati di T-SQL, gestione delle transazioni e degli errori, creazione di un template per le stored procedure, performance tuning delle query tramite analisi e scelta di varie tipologie di indici e tanto altro!

Abbiamo deciso di condividere gli esercizi assegnati al termine della prima lezione.

Scarica lo script per creare il nostro database d’esempio cliccando qui Scarica database YIMP e mettiti alla prova rispondendo a queste domande con del codice breve, compatto, performante e che utilizza tutti i costrutti avanzati di T-SQL!

1) Per ogni nazione, riportare il cliente a cui sono state registrate più fatture nel 2018.

2) Rieseguire il calcolo precedente considerando soltanto le fatture con importo superiore a 10 (l’importo si ottiene dalla tabella FattureDettaglio tramite la formula PrezzoUnitario * Quantità * (1-sconto) ).

3) Creare una vista parametrizzata (inline function) degli ordini arrivati con un ritardo superiore a x giorni

(dove x è il parametro). Un ordine è in ritardo se nella tabella delle fatture la data di arrivo è maggiore della data richiesta spedizione.

4) Riportare l’anagrafica dei clienti con in più:

– una colonna che riporti il numero di fatture registrate nel 2018;

– il numero di clienti della stessa regione;

– se ha ricevuto almeno una volta un ordine in ritardo.

5) Riportare per ogni corriere, le tre fatture di importo maggiore.

6) Creare una tabella contenente i numeri da 1 a 5.

Chiamare dinamicamente (tramite apply) la funzione definita nel punto 3 per i valori da 1 a 5 nella tabella appena creata.

7) Verificare le differenze tra outer apply e cross apply nella query precedente.

8) A parità di regione, riportare i due clienti con più anni di anzianità.

9) Riportare nella tabella delle fatture una colonna contenente il rapporto tra l’importo della singola fattura e il totale fatturato al cliente nell’anno di emissione della fattura.