Den skal hente TOP 10, med flest stemmer i mit hot or not system
Vi siger f.eks der er 2 personer der har stemt på billedet "hej.jpg". Den ene person gav den karakteren fra (0-5) 3 og den anden person gav den 2
Så har jeg 2 felter i min tabel (hotornotstem) den ene hedder ialt, og den anden stemmer.
Nu vil stemmer have 5, da den ene person stemte 3 og den anden 2 ( 3+2=5)
i alt er så 2, fordi der er 2 der har stemt.
Men jeg får hele tiden karakteren (5.00) ud fra denne. Hvorfor?
SELECT (stemmer / ialt) AS gns, ialt AS stemmerialt, brugere.brugernavn AS navnet, billedgalleri.billede AS billed FROM hotornotstem, brugere, billedgalleri WHERE billedgalleri.brugernavn = brugere.brugernavn AND brugere.koen = 'd' ORDER BY gns DESC LIMIT 0,10
Jeg tror der er noget galt med din join. Hvordan hænger hotornotstem sammen med billedgalleri? Med "billedid" ? For så ville jeg lave query'en om til:
SELECT (h.stemmer / h.ialt) AS gns, h.ialt AS stemmerialt ,b.brugernavn AS navnet ,g.billede AS billed FROM hotornotstem AS h INNER JOIN billedgalleri AS g ON h.billedid = g.billedid INNER JOIN brugere AS b ON g.brugernavn = b.brugernavn WHERE b.koen = 'd' ORDER BY gns DESC LIMIT 0,10
Den skal hente dem med top 10 karakter fra "hotornotstem". Hvor den skal ind og finde brugernavnet i "billedgalleri". Så skal den finde "navn" i "billedgalleri" og tjekke om "koen" er sat til "d" i tabellen "brugere"
hotornotstem tabellen har jo kolonnen "billed" så skal den ind i "billedegalleri" tabellen og tjekke om "billed" fra hotornotstem er "billede" i "billedgalleri". Så skal den finde "navn" i billedgalleri og tjekke om kønnet enten er p eller d i tabellen brugere.
SELECT (h.stemmer / h.ialt) AS gns, h.ialt AS stemmerialt ,b.brugernavn AS navnet ,g.billede AS billed FROM hotornotstem AS h INNER JOIN billedgalleri AS g ON h.billed = g.billed INNER JOIN brugere AS b ON g.brugernavn = b.brugernavn WHERE b.koen = 'd' ORDER BY gns DESC LIMIT 0,10
"Men jeg får hele tiden karakteren (5.00) ud fra denne. Hvorfor?" Er felterne i din db sat som integers eller floats?
Synes godt om
Ny brugerNybegynder
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.