Vanessa90 Geschrieben 4. Mai 2012 Teilen Geschrieben 4. Mai 2012 Hallo ihr Lieben, Lerne momentan für eine Prüfung. Wir müssen ein paar SQL Aufgaben lösen, um zugelassen zu werden. Kann mir jemand bitte bei einer SQL Aufgabe helfen? Habe das ERM Modell mit Primär- und Fremdschlüsseln hochgeladen: Directupload.net - zsvklhah.png Die Aufgabe lautet: Welche Spieler haben sowohl in dem Spiel mit der SpielId 787 als auch in dem Spiel mit der SpielId 837 *gespielt* (!) (d.h. waren gleich in der Anfangsaufstellung dabei oder wurden im Verlauf des Spiels eingewechselt)? Das Ergebnis soll (personid, name, vorname) lauten. Ich habe auch schon eine Idee, aber die ist wohl falsch, weil meine Anfrage immer abgelehnt wird: select spielerid, name, vorname from person inner join spielnominierung on (spielerid = personid) where instartelf = true and spielid = 787 or spielid = 837 union select spielerid, name, vorname from person inner join spielnominierung on (spielerid = personid) inner join spielerwechsel on (reinspielerid = personid) where spielid = 787 or spielid = 837 and instartelf = false Man erstellt zunächst eine Zwischentabelle mit allen Spielern, die in der Startelf bei den Spielen mit der ID 837 und 787 waren. Dann habe ich eine weitere Zwischentabelle erstellt. In dieser werden alle Spieler aufgelistet, die nicht in der Startelf waren und eingewechselt wurden (...inner join spielerwechsel on (reinspielerid = personid). Zum Schluss wurden beide Tabellen verschmolzen, aber leider stimmt mein Ergebnis so nicht. Kann mir jemand bitte einen Tipp geben? Sitze nun schon seit 40 Minuten an dieser Aufgabe und es ist einfach nur noch zum Verzweifeln Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
afo Geschrieben 4. Mai 2012 Teilen Geschrieben 4. Mai 2012 Wer lehnt deine Anfrage ab? Mit welcher Rückmeldung? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Vanessa90 Geschrieben 4. Mai 2012 Autor Teilen Geschrieben 4. Mai 2012 Das Programm sagt immer: "Error: FEHLER: ResultException: The number of result tupel differs from the number of expected tupels" ich habe wohl in meiner Ergebnistabelle entweder zu viele oder zu wenig Datensätze. Aber warum? Mit distinct klappt es auch nicht Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Amenos Geschrieben 7. Mai 2012 Teilen Geschrieben 7. Mai 2012 funktionieren denn die statements alleine (ohne union)? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Vanessa90 Geschrieben 7. Mai 2012 Autor Teilen Geschrieben 7. Mai 2012 Hallo Amenos, ja, die Statements funktionieren alle. Weiß echt nicht mehr weiter. Sitze nun schon zwei Tage an dieser Aufgabe Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
flashpixx Geschrieben 7. Mai 2012 Teilen Geschrieben 7. Mai 2012 Man braucht dafür keinen Union (Stichwort: Mengendiagramm). Du vereinigst die Menge, bei der einmal alle Spieler mit der ID 837 und 787 ausgewählt werden Benutze den Upload des Forums! Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Vanessa90 Geschrieben 7. Mai 2012 Autor Teilen Geschrieben 7. Mai 2012 hi flashpix, Oh nein! Ich weiß jetzt, glaube ich, was du meinst )) Man muss die Spieler heraussuchen, die in BEIDEN Spielen gespielt haben. Ich habe jedoch ALLE Spieler, die in beiden Spielen gespielt haben, herausgesucht. Zunächst sucht man die Spieler heraus, die an Spiel 787 teilgenommen und gespielt (standen auf dem Spielfeld) haben. Dann sucht man die Spieler heraus, die an Spiel 837 teilgenommen haben und gespielt (standen auf dem Spielfeld) haben. Danach bildet man den Durchschnitt zwischen beiden Mengen. Als Ergebnis bekommt man eine Tabelle mit Spielern, die in BEIDEN Spielen gespielt haben. Jetzt muss man die Anfrage noch irgendwie um Spieler erweitern, die später in beiden Spielen eingewechselt wurden. Ich muss das schnell ausprobieren, leider habe ich in meiner Wohnung nur GPRS und der VPN Zugang stürzt immer ab. Muss wohl wieder in die Bücherei :beagolisc Danke für den Tipp mit den Mengendiagrammen! Werde mich nachher wieder melden und berichten, ob es geklappt hat Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
flashpixx Geschrieben 7. Mai 2012 Teilen Geschrieben 7. Mai 2012 Ja genau das meinte ich, aber es ist nicht so schwer, wie Du es jetzt aufgeschrieben hast. Bisschen sinnvoll nachdenken..... Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.