Hej, Jag har lite problem med en SQL query som jag kör (MySQL).
Två tabeller:
KLUBBAR:
ID
Namn
regionid
poang
Regioner:
ID
Namn
Sportid
Antal_registrerade
Jag tar reda på "sport" (ett idnummer) med request.querystring och använder mig av SQL satsen:
"SELECT region.id AS regionid, region.namn AS regionnamn, region.antal_registrerade, klubbar.id AS klubbid, klubbar.namn AS klubbnamn, klubb.poang FROM regioner INNER JOIN klubbar ON klubbar.regionid = regioner.id WHERE regioner.sportid="& sport &" ORDER BY regioner.namn ASC "
Jag vill ha så att den listar alla olika resultat i Regioner och bara den klubben med högst poäng i varje region.
det ska alltså se ut nånting såhär:
Region: Ledande klubb: Poäng: Antal Registrerade:
Region1 Klubben FF 14 18
Region2 Klubben IF 26 22
Region3 IFK Klubben 12 16
För tillfället skrivs ALLA klubbarna ut istället.... Nån som ser vad som är fel?
Det bästa är nog att skapa en temporärtabell med två kolumner
regionid och poäng
create temporary table t(regionid int, poang int)
insert into t
select regionid,max(poang)
from klubbar
group by regionid
SELECT r.id AS regionid, r.namn AS regionnamn,
r.antal_registrerade, k.id AS klubbid,
k.namn AS klubbnamn, k.poang
from klubbar k inner join t
on k.regionid = t.regiondid
and k.poang = t.poang
inner join region r
on t.regiondid = r.id
Hmm, testade att göra ett recordset till som ser ut som följer:
Recordset1:
stm = "SELECT regioner.id AS regionid, regioner.namn AS regionnamn, region.antal_klubbar FROM regioner WHERE regioner.sportid="& sport &" ORDER BY regioner.namn asc"
set rs1 = Connection.Execute(stm)
Recordset2: (som jag lägger efter do until rs1.eof för att få rätt regionid på varje rad)
stm2 = "SELECT klubbar.id AS klubbid, klubbar.namn AS klubbnamn, klubbar.poang FROM klubbar WHERE klubbar.regionid="& rs1("regionid") &" ORDER BY klubbar.poang desc"
set rs2 = Connection.Execute(stm2)
Jag vet inte om detta blir tyngre än att skapa en temorär tabell varje gång sidan besöks vilket kan bli ganska ofta. Någon som vet om det är tyngre att köra två recordsets än att skapa en temporär tabell?
Tack för hjälpen så här långt LarsG :)
Mvh
//G8
141 ms totalt · 3 externa anrop · v20260731065814-full.55e59744