Hakusessa olisi tämmöinen jokseenkin monimutkainen kysely, enkä oikein keksi, miten tämän saisi toteutettua.
Tarkoitus olisi saada listattua users taulusta käyttäjiä maalimäärien mukaan suurimmasta pienimpään. users.id ja career.pID vastaavat toisiaan, joten Jukan kokonais maalimäärä olisi tässä tapauksessa 250 ja Pekan 340.
Lisäksi haluaisin rajoittaa haun "jostain johonkin". LIMIT'llä kun saan vain suurimmasta LIMIT rajaan saakka.
users taulu +----+----------+ | id | username | +----+----------+ | 1 | Jukka | | 2 | Pekka | +---------------+ careers taulu +----+-----+-------+ | id | pID | goals | +----+-----+-------+ | 1 | 1 | 100 | | 2 | 1 | 150 | | 3 | 2 | 340 | +----------+-------+
Pseudona jokseenkin näin:
SELECT * FROM users ORDER BY careers.goals DESC LIMIT 20 TO 40
Tässä siis haettaisiin 20. suurimmasta eteenpäin 40. asti.
Ei ole mutkikas, on aivan tavallinen kahden taulun kysely.
SELECT users.username, SUM(careers.goals) AS total_goals FROM users LEFT JOIN careers ON careers.pID = users.id GROUP BY users.id ORDER BY total_goals DESC LIMIT 21 OFFSET 19
Aihe on jo aika vanha, joten et voi enää vastata siihen.