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

hämta flera svar från samma tabell


swede_anka

Rekommendera Poster

swede_anka

Jag kör mysql med 2 tabeller

förenklat så heter dem "medlemmar" och "resultat"

de är uppbyggda enligt

[medlemmar]

medlems_id

medlems_namn

 

[resultat]

resultat_id

resultat_medlems_id

tavlings_namn

summa

 

medlemmarna är så klart unika medans det kan finnas flera resultat som är kopplade till samma användare.

Jag vet hur man gör en join sats för att få en koppling mellan dessa tabeller och få ut resultaten genom att loppa ut svaren.

 

Problemet är att jag vill kunna skriva ut en användarlista med alla dess resultat. Ordningen och sorteringen på hur de ska skrivas ut ska vara:

namn (ingen sortering),

tavlings_namn asc,

summa desc.

 

Summan ska först sorteras på "monopol"s summa, sedan "fia med knuff"s summa, sedan "alfapet"s summa, och sist på "yatzy"s summa.

 

 

Resultat ska alltså se ut enligt följande exempel:

 

"medlems_namn", "tavlings_namn 1" "summa 1" , "tavlings_namn 2" "summa 2", "tavlings_namn 3" "summa 3"

Adam, alfapet=52, fia med knuff=26, monopol=65, yatzy=128

David, alfapet=50, fia med knuff=36, monopol=45, yatzy=153

Cesar, alfapet=50, fia med knuff=30, monopol=75, yatzy=258

Bertil, alfapet=50, fia med knuff=30, monopol=70, yatzy=8

 

Anledningen till att [resultat] tabellen är uppbyggd på detta sätt är att antalet olika "spel" är väldigt många och kan variera med tiden så därför skulle det inta vara hållbart att göra en separat kolumn för varje spel

Länk till kommentar
Dela på andra webbplatser

Mr Andersson

Som jag förstår det, så är det summeringen du har problem med?

 

SELECT medlems_id,medlems_namn,tavlings_namn,sum(summa) as Totalt FROM medlemmar

LEFT JOIN resultat ON medlems_id = resultat_medlems_id

GROUP BY medlems_id,medlems_namn,tavlings_namn

ORDER BY medlems_namn,tavlings_namn

 

Sen är det bara att loopa genom tabell i ASP, PHP eller vad du nu använder.

Så länge det är samma medlems_id, lägger du till tävling och totalt på samma rad, är det ny medlems_id gör du ny rad.

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...