hawkeye78 Geschrieben 16. Mai 2006 Teilen Geschrieben 16. Mai 2006 Hallo, ich soll als Hausaufgabe für die Uni, ein SQL-Statement schreiben, das auf einer Tabelle (in welcher sich amerikanische Präsidenten, sowie den Namen ihrer Gattinen und das Jahr ihrer heiratet befinden), die Präsidenten ausgibt die im gleichen Jahr geheiratet haben. Zum Beispiel haben Nixon und Reagan im Jahr 1940 geheiratet, meine entwürfe für die SQL -Abfragen sehen im moment so aus: 1. Variante: SELECT COUNT( Mar_Year ) AS zahl, Pres_Name FROM pres_marriage GROUP BY Mar_Year HAVING zahl=2 -> Liefert nur eine der beiden Präsidenten z.B. nur Nixon 2. Variante SELECT Pres_Name FROM pres_marriage INNER JOIN pres_marriage ON pres_marriage.Mar_Year = pres_marriage.Mar_Year AND pres_marriage.Pres_Name != pres_marriage.Pres_Name -> Behauptet #1066 - Not unique table/alias: 'pres_marriage' Da ich nun ziemlich ratlos bin, was ich falsch mache wäre ich über einen kleinen Hinweis sehr danbar. Viele Grüsse Dan Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Jasper Geschrieben 16. Mai 2006 Teilen Geschrieben 16. Mai 2006 z.b. mit subselect: select name from presis where m_year in (select m_year from presis group by m_year having count(*) > 1); allerdings unterstützen nicht alle RDBMS subselects. -j Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
baba007 Geschrieben 16. Mai 2006 Teilen Geschrieben 16. Mai 2006 select name, vorname from pres_marriage where Mar_Year = 1940 (wenn zahl oder) where Mar_Year is '1940' wenn string Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Jaraz Geschrieben 16. Mai 2006 Teilen Geschrieben 16. Mai 2006 SELECT Pres_Name FROM pres_marriage p1 INNER JOIN pres_marriage p2 ON p1.Mar_Year = p2.Mar_Year AND p1.Pres_Name != p2.Pres_Name Gruß Jaraz Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
schawenn Geschrieben 19. Mai 2006 Teilen Geschrieben 19. Mai 2006 Und anstatt in der Where-Klausel ein Subselect zu machen, kannst du es auch in der Select-Klausel machen. So wie du lustig bist. ;-) SELECT presi_names, jahr, (SELECT COUNT(*) FROM presis u WHERE u.jahr = t.jahr) FROM presis t ORDER BY jahr mfg schawenn 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.