Avatar billede lund_dk Praktikant
21. maj 2007 - 14:23 Der er 2 kommentarer og
1 løsning

SQL udfordring

Jeg har denne SQL som fungrer upåklageligt..
strSQL = "SELECT * FROM sites INNER JOIN sites2Genre ON Sites.ID=Sites2Genre.siteID WHERE Sites2Genre.genreID=" & ID & " ORDER BY sites.titel"

MEN MEN MEN..

i stedet for at sortere efter sites.titel - skal jeg have sorter efter bedømmelser, som sammenregning i en helt tredie tabel

Tabellen ser sådanledes ud

RATING

ID | SITEID | RATE
1    3      2
2    3      4
3    2      5
4    4      4

Der rates mellem 1 og 5, dvs der skal dykkes ned i tabellen, tages alle stemmer for SITEID og finde gennemsnittet af rate..

Mon det kan lade sig gøre..?
Avatar billede fennec Nybegynder
21. maj 2007 - 15:00 #1
strSQL = "SELECT sites.id, sites.title, avg(RATING.rate) "&_
    "FROM sites INNER JOIN sites2Genre ON Sites.ID=Sites2Genre.siteID "&_
    "left join RATING on RATING.siteID=sites.id "&_
    "WHERE Sites2Genre.genreID=" & ID & " "&_
    "group by sites.id, sites.title "&_
    "ORDER BY avg(RATING.rate)"
Avatar billede lund_dk Praktikant
23. maj 2007 - 10:24 #2
perfekt..
smid et svar :D
Avatar billede fennec Nybegynder
23. maj 2007 - 10:38 #3
.o) <-- One Eyed Jack
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester