|
@@ -1,14 +1,33 @@
|
|
|
% !TEX root = ../main.tex
|
|
|
|
|
|
\begin{enumerate}[label=\alph*.]
|
|
|
- \item Uso di proiezione, join e restrizione
|
|
|
+ \item Uso di proiezione, join e restrizione.
|
|
|
|
|
|
- Per ogni record di R con valore di C maggiore o uguale a 10 e che ha un valore di E uguale a un valore di F nella tabella S, riportare R.C e S.D.
|
|
|
+ Mostrare l'IdRicetta e il Nome delle ricette create da birrai di nome
|
|
|
+ Giovanni.
|
|
|
\begin{lstlisting}[style=SQLu]
|
|
|
-SELECT R.C, S.D
|
|
|
-FROM Tabella1 R
|
|
|
-JOIN Tabella2 S ON R.E = S.F
|
|
|
-WHERE R.C >= 10
|
|
|
+SELECT r.IdRicetta, r.Nome
|
|
|
+FROM Ricette r
|
|
|
+JOIN Persone p ON p.IdPersona = r.IdCreatrice
|
|
|
+WHERE p.Nome = 'Giovanni'
|
|
|
\end{lstlisting}
|
|
|
+ \item Uso di group by con having, where e sort.
|
|
|
+
|
|
|
+ Ordinare per importo totale decrescente i fornitori da cui ha ordinato il
|
|
|
+ birrificio `Pirati Rossi', mostrandone la ragione sociale oltre che
|
|
|
+ l'importo totale e l'importo medio, purché l'importo totale sia superiore
|
|
|
+ a 10 euro.
|
|
|
+\begin{lstlisting}[style=SQLu]
|
|
|
+SELECT fo.RagioneSociale, SUM(fa.Importo) ImportoTotale,
|
|
|
+ AVG(fa.Importo) ImportoMedio
|
|
|
+FROM Fornitori fo
|
|
|
+JOIN Fatture fa ON fa.IdFornitore = fo.IdFornitore
|
|
|
+JOIN Birrifici b ON b.IdBirrificio = fa.IdBirrificio
|
|
|
+WHERE b.Nome = 'Pirati Rossi'
|
|
|
+GROUP BY fo.IdFornitore, fo.RagioneSociale
|
|
|
+HAVING SUM(fa.Importo) > 10
|
|
|
+ORDER BY SUM(fa.Importo) DESC
|
|
|
+\end{lstlisting}
|
|
|
+
|
|
|
\end{enumerate}
|
|
|
\clearpage
|