(postgre)SQL substring funktioniert nicht
Hi, ich sitze nun schon seit einigen Stunden an einder SQL-Abfrage und komme einfach nicht weiter. Wir müssen für unser Studium einige SQL-Abfragen auf eine Fußballdatenbank formulieren. Wir haben eine Tabelle Games mit ner "gamesid", "dayofplay", "season" (String yyyy/yyyy), "day", "hometeam", "awayteam", "homegoals", " awaygoals", und eine Tabelle mit Players, mit den Spalten "pid" "team" "season" "name" und "birthday" (date).
Von den Tabellen müssen wir nun abfragen Welcher Spieler in einem Jahr geboren wurde, in denen Hamburg nicht zuhause gegen Bayer Leverkusen gespielt hat.
Ich bin bisher nur so weit gekommen, dass ich die Jahre ausgeben konnte, in denen Hamburg nicht gegen Bayer zuhause gespielt hat mit der Abfrage:
(SELECT season
FROM Games
WHERE hometeam = 'Hamburger SV') EXCEPT
(SELECT season
FROM Games
WHERE awayteam = 'Bayer Leverkusen')
Wenn ich nun jedoch versuche mit den Strings, die ich da ausgegeben bekomme was zu machen bekomme ich nur Fehler zurück. Ich wollte aus der season die in dem Format '2003/2004' als String gespeichert sind mit SUBSTRING ein Jahr herausfiltern, aber ich bekomme so nur Fehler (ERROR: syntax error at or near "EXCEPT") zurück:
SELECT SUBSTRING((SELECT season
FROM Games
WHERE hometeam = 'Hamburger SV') EXCEPT
(SELECT season
FROM Games
WHERE awayteam = 'Bayer Leverkusen')) FROM 1 FOR 4;
benutze ich SUBSTRING falsch, oder muss ich da mehr umschreiben?
vielen Dank für die Hilfe,
mfg
Hi, ich sitze nun schon seit einigen Stunden an einder SQL-Abfrage und komme einfach nicht weiter. Wir müssen für unser Studium einige SQL-Abfragen auf eine Fußballdatenbank formulieren. Wir haben eine Tabelle Games mit ner "gamesid", "dayofplay", "season" (String yyyy/yyyy), "day", "hometeam", "awayteam", "homegoals", " awaygoals", und eine Tabelle mit Players, mit den Spalten "pid" "team" "season" "name" und "birthday" (date).
Von den Tabellen müssen wir nun abfragen Welcher Spieler in einem Jahr geboren wurde, in denen Hamburg nicht zuhause gegen Bayer Leverkusen gespielt hat.
Ich bin bisher nur so weit gekommen, dass ich die Jahre ausgeben konnte, in denen Hamburg nicht gegen Bayer zuhause gespielt hat mit der Abfrage:
(SELECT season
FROM Games
WHERE hometeam = 'Hamburger SV') EXCEPT
(SELECT season
FROM Games
WHERE awayteam = 'Bayer Leverkusen')
Wenn ich nun jedoch versuche mit den Strings, die ich da ausgegeben bekomme was zu machen bekomme ich nur Fehler zurück. Ich wollte aus der season die in dem Format '2003/2004' als String gespeichert sind mit SUBSTRING ein Jahr herausfiltern, aber ich bekomme so nur Fehler (ERROR: syntax error at or near "EXCEPT") zurück:
SELECT SUBSTRING((SELECT season
FROM Games
WHERE hometeam = 'Hamburger SV') EXCEPT
(SELECT season
FROM Games
WHERE awayteam = 'Bayer Leverkusen')) FROM 1 FOR 4;
benutze ich SUBSTRING falsch, oder muss ich da mehr umschreiben?
vielen Dank für die Hilfe,
mfg
Zuletzt bearbeitet: