\documentclass{schuleab}
\usepackage[utf8]{inputenc}
\usepackage{schulinf}

% Dieses Dokument ist in der Zusammenarbeit von Informatikreferendaren und
% ehemaligen Informatikreferendaren der Studienseminare (heute ZfsL) Arnsberg,
% Hamm und Solingen entstanden.
%
% Das Dokument steht unter der Lizenz: Creative Commons by-nc-sa Version 4.0
% http://creativecommons.org/licenses/by-nc-sa/4.0/deed.de
%
% Nach dieser Lizenz darf das Dokument beliebig kopiert und bearbeitet werden,
% sofern das Folgeprodukt wiederum unter gleichen Lizenzbedingungen vertrieben
% und auf die ursprünglichen Urheber verwiesen wird.
% Eine kommerzielle Nutzung ist ausdrücklich ausgeschlossen.
%
% Die Namensnennung durch einen Verweis und die Lizenzangabe der ursprünglichen
% Urheber auf den Materialien für Schülerinnen und Schüler ist erforderlich.
%
% Die Sammlung der Dokumente steht unter
% http://ddi.uni-wuppertal.de/material/materialsammlung/
% zur Verfügung.
%
% Das LaTeX-Paket zum Setzen der Dokumente der Sammlung steht
% unter  http://www.ctan.org/pkg/schule
% zur Verfügung.

\usepackage[pdfauthor={Referendare der Informatikfachseminare Arnsberg, Hamm und Solingen}]{hyperref}
\includexmp{lizenz}
\cclizenz{byncsaeu}
\footerQRLink{materialsammlung_qr_url.pdf}

\svnid{$Id: ab_02_abfragen.tex 1498 2016-05-17 17:53:53Z humbert $}

\dokName{Anweisungen an die Datenbank}
\jahrgang{Q1}

\usepackage{longtable}
\usepackage{lscape}


\lstset{% 
	breaklines=true, % Zeilenumbrüche
	language=SQL, % Sprache
	basicstyle=\ttfamily,
	breakindent=30pt,
	breakatwhitespace=true,
	morekeywords={double,text,show,tables,use,is,truncate,rename,to,after,change},
	tabsize=2,
}

\begin{document}
\section*{Anweisungen an die Datenbank einer Spedition}

	Auf die Datenbank einer Spedition werden verschiedene Abfragen ausgeführt. 
	Das Relationenschema und die Daten dieser Datenbank entnehmen Sie dem 
	vorherigen Arbeitsblatt.

	\minisec{Aufgabe}
	\begin{smallenumerate}
		\item Erläutern Sie, welche Daten mit folgenden SQL-Abfragen gesucht werden. 
		 Wenden Sie die Befehle außerdem auf die angegebenen Daten an und geben Sie 
		 die daraus resultierenden Tabellen bzw. Ergebnisse an.  
% 		
		\begin{smallenumerate} 
			\item % Welche Fahrer frei sind
				\begin{lstlisting}
SELECT fahrer.vorname, fahrer.name 
  FROM fahrer LEFT JOIN lkw ON fahrer.fid = lkw.fahrer 
  WHERE lkw.kennzeichen IS NULL;
				\end{lstlisting}

			\item % Zu Auftrag den Auftraggeber sowie Start- und Zielort angeben
				\begin{lstlisting}
SELECT auftraege.aid, auftraggeber.name, ad1.ort AS start, ad2.ort AS ziel
  FROM auftraege, auftraggeber, adressen AS ad1, adressen AS ad2 
  WHERE auftraege.auftraggeber = auftraggeber.aaid AND auftraege.start = ad1.adid AND auftraege.ziel = ad2.adid;
				\end{lstlisting}

			\item % Entfernen eines Fahrers 
				\begin{lstlisting}
DELETE FROM fahrer WHERE fid = 7 OR fid = 4; 
				\end{lstlisting}

			\item %Maximale gleichzeitige Lieferung pro Auftrag
				\begin{lstlisting} 
SELECT b.auftrag, SUM(lkw.zuladung) 
  FROM bearbeitet b JOIN lkw ON b.lkw = lkw.kennzeichen 
  GROUP BY b.auftrag;
				\end{lstlisting}

		\end{smallenumerate}

		\item  Die Spedition hat folgende Aufgaben, die mit auf der Datenbank 
		 ausgeführt werden sollen:
		\begin{smallenumerate} 
			\item Die Größe des Auftrags von \enquote{Akede} hat sich geändert und 
			 soll 140 betragen.
			\item Zu jedem besetzten LKW soll die Fahrerin angegeben werden.
% SELECT lkw.kennzeichen, fahrer.vorname, fahrer.name FROM lkw, fahrer WHERE fahrer.fid = lkw.fahrer;
			\item Alle Fahrer, die sich um Aufträge der Firma \enquote{Friedmans} 
			 kümmern, sollen ausgegeben werden.
			\item Die Anzahl der LKWs sowie ihre durchschnittliche Zuladung soll 
			 bestimmt werden.
		\end{smallenumerate}
		Geben Sie die dazu geeigneten SQL-Anweisungen und ggf. ihre Ausgabe an.

	\end{smallenumerate}

\end{document}
