Just nu i M3-nätverket
Gå till innehåll

krånglig SQL


RosaFloyd

Rekommendera Poster

Har ett grymt krångligt problem som jag inte lyckas lösa.

Håller på att bli tokig

 

Ska räkna ut poäng för olika lag i en turnering.

För att lista ut vilka som vann en viss match måste man titta efter hur många mål ett visst lag gjort i just den matchen. Seger ska ge 5 poäng, oavgjort 2 poäng.

 

SQL-satsen ska visa alla lag i en viss turnering och hur många poäng de fick

 

Hur sjutton ska man gå till väga?

Är inte dålig på SQL men det här blev bara för mycket.

 

Försökte först se vilket lag som vann en viss match men redan här gick det åt skogen :)

 

SELECT lag.LagNamn, matchNr

FROM matchHändelse, Lag, spelare

WHERE spelare.personNr=matchHändelse.personNr

AND spelare.LagNamn=lag.LagNamn

GROUP BY lag.LagNamn, MatchNr

HAVING COUNT(*)= (SELECT MAX(Antal)

FROM (

SELECT match.matchNr, lag.LagNamn, COUNT(*) AS Antal

FROM matchHÄndelse, LAG, spelare, Match

WHERE HändelseNr=2

AND spelare.personNr=matchHändelse.personNr

AND match.matchNr=matchHändelse.matchNr

AND spelare.lagNamn=lag.lagNamn

GROUP BY match.matchNr, lag.LagNamn) AS Nytabell)

 

Någon som har en idé?

 

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...