Hej, Jag förutsätter en tabell med en kolumn Bild (bildnumret) där det ligger en rad för varje röst. Då kan du göra på följande vis:Problem med sql-sats
Håller på med ett marknadstest i ASP, där besökaren ska kunna välja 3 bland 24 bilder, fylla i kön och ålder.
Jag ska ha en sida som visar de tre bilder som fått flest röster beroende på kön, åldersgrupp.
Då man har skickat iväg de tre bilder man röstat på hamnar deras bildnummer under kolumnen valda_bilder i databas tabellen.
Jag ska alltså lista de top 5 bildnummer som förekommer mest i kolumnen valdabilder och som är valda av exempelvis män i åldersgruppen 15-20.
Skulle vara grymt om någon hade ett förslag på hur sql-satsen skulle se ut, själv har jag kört fast helt.
/PerSv: Problem med sql-sats
SELECT TOP 5 Bild,Count(Bild) as Antal
FROM Valda_bilder
GROUP BY Bild
ORDER BY Antal DESC
Om du vill göra urval på person så får du lägga till en kolumn Person i valda_bilder tabellen och låta denna peka på din Person-tabell. Därefter kan du göra urval genom att lägga till villkor i WHERE satsen och joina in diverse info. Ex
SELECT TOP 5 Bild,Count(Bild) AS Antal
FROM Valda_bilder
GROUP BY Bild
ORDER BY Antal DESC
WHERE Person.Alder>25
LEFT JOIN Person ON Person.ID=Valda_Bilder.ID
Jag har inte verifierat SQL-satserna men de bör ge dig en hint om hur du ska göra iallafall, även om det kan finnas en bugg eller två där :-)
/Per Hultqvist