Tjena allihop.. i skolan tycker dom att vi ska lära oss SQL vilket inte alls är dåligt.. vad som är dåligt är att vi inte får nån hjälp när vi kör fast i nått, så då får vi hitta egna "källor" till problemen, så vilken plats är bättre än webforum :e
hur som helst till problemet:
frågan lyder:
"I vilka VM har öppningsmatchens hemmalag också varit arrangerande nation?
Ledning: använd MIN på speldatum (i en sub-query) för att hitta varje VM’s öppningsmatch.
Svara årtal, hemmalag och bortalag."
relevanta tabeller i databasen:
games: {year, thegroup, game, teama, teamb, scorea, scoreb}
years: {year, hostnation...}
stad_alloc: {year, thegroup, game, stadium, thedate}
inte så svårt eller hur? yeah right
jag har tänkt mig att koden ska vara nått så här (vilken självklart är fel med det rätta svaret):
SELECT games.year, games.teama, teamb
FROM games, years, stad_alloc
WHERE games.teama=years.hostnation
AND stad_alloc.thedate=(SELECT MIN(stad_alloc.thedate) FROM stad_alloc, games WHERE stad_alloc.game=games.game);
Detta blir fel svar... den ska alltså hitta öppningsmatchen genom subquering ..min(stad_alloc.thedate) för varje år som VM har spelats kontrollera vilka lag som spelade mot varandra genom ...WHERE stad_alloc.game=games.game
Problemet jag har är att den visar "fel" lag som spelar mot varandra typ lag A vs B år 1930, A vs C 1930, A vs D 1930 osv.
Rätt svar ska var 6 ggr, men jag får 20+
All hjälp uppskattas
Tack i förhand
Rozzi