Frage von xKevin123x, 17

Wie kann ich beim VideoCenter heraus finden, wer alles den Film Alice´s Restaurant ausgeliehen hat?

Hilfreichste Antwort - ausgezeichnet vom Fragesteller
von PWolff, 7

In welcher Form habt ihr die Datenbank vorliegen? Vermutlich SQL?

Ist die Aufgabe, eine SQL-Query zu erstellen?

Vermutlich braucht ihr dann ein SELECT mit JOIN und WHERE

Kommentar von xKevin123x ,

Ja, wir sollen eine SQL-Query erstellen ohne jemals davon gehört zu haben. Könntest du mir noch genauer helfen? 

Kommentar von PWolff ,

Da muss ich meine SQL-Kenntnisse aus dem Winterschlaf wecken.

Kennt ihr schon den SELECT-Befehl? Vermutlich nicht, wenn du sagst, dass ihr noch nie davon gehört habt.

Nehmen wir an, ihr habt eine Tabelle "Kunden" mit den Feldern

KdNr (Primärschlüssel; "Kundennummer")
Name
Vorname
(und Adressdaten, Bankdaten, ...)

eine Tabelle "Videos" mit den Feldern

InvNr (Primärschlüssel; "Inventarnummer")
Titel
(und Filmstudio, Erscheinungsjahr, ...)

und eine Tabelle "Ausleihen" mit den Feldern

KdNr (Fremdschlüssel)
InvNr (Fremdschlüssel)
Datum
(und Rückgabe bis, ...)

Dann kannst du mit

SELECT * FROM Kunden;

alle Kunden auflisten lassen.

SELECT * FROM Kunden
WHERE Name = "Meier";

listet alle Kunden mit dem Nachname Meier auf.

SELECT * FROM Videos
WHERE Titel = "Alice´s Restaurant";

listet alle Kopien des Films "Alice´s Restaurant" auf.

SELECT Vorname, Name, KdNr FROM Kunden
WHERE Name="Schulze" AND Vorname="Thomas";

listet alle Kunden mit dem Namen "Thomas Schulze" auf.

Für die Verbindung von mehreren Tabellen siehe

http://stackoverflow.com/questions/1703297/selecting-records-in-sql-based-on-ano...

und

http://www.codeproject.com/Articles/33052/Visual-Representation-of-SQL-Joins

(obwohl beides sich an Leute mit Vorkenntnissen in SQL richtet)

Für dein Beispiel probiere ich mal, ob ich's zusammenkriege:

SELECT
Kunden.KdNr, Kunden.Vorname, Kunden.Name
FROM
Ausleihen, Kunden, Videos
WHERE
Ausleihen.KdNr = Kunden.KdNr
AND Ausleihen.InvNr = Videos.InvNr
AND Videos.Titel = "Alice´s Restaurant"

oder mit JOIN

SELECT Kunden.KdNr, Kunden.Vorname, Kunden.Name
FROM Kunden
JOIN Ausleihen ON Ausleihen.KdNr = Kunden.KdNr
JOIN Videos ON Ausleihen.InvNr = Videos.InvNr
WHERE Videos.Titel = "Alice´s Restaurant";

(Keine Garantie für Funktion, ich hab auf diesem Computer nichts installiert, was SQL kann und womit ich mich auskenne)

Antwort
von FuHuFu, 7

Wäre es Dir denn recht, wenn andere Leute von der Videothek erfahren würden, was Du Dir im letzten Jahr alles ausgeliehen hast ?

Also lautet die richtig Anrwort: Gar nicht. Aiuch Videotheken schützen die Privatsphäre ihrer Kunden.

Antwort
von BigDreams007, 10

Wenn du dort nicht arbeitest gar nicht?!

Antwort
von Tekumi, 11

Sofern du dort nicht arbeitest gar nicht, das fällt unter den Datenschutz.

Keine passende Antwort gefunden?

Fragen Sie die Community

Weitere Fragen mit Antworten