Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

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

Geschrieben

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

Geschrieben

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

Geschrieben

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

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...