Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: Randomilla tietokannasta

Triskal [23.11.2004 23:28:48]

#

Minulla on edelleen tässä tämä arviotietokantani, jossa on levyarvioita. Nyt pitäisi saada aikaiseksi "Joosef suosittelee," eli

select * from arviot where pisteet >= 5

Hakutuloksia tulee monta ja yksi niistä pitäisi randomilla saada valittua. Ideoita?

Satunnaisluvun arpominen taulun tietueiden lukumäärän ollessa maksimi ei käy, koska pistemäärän 5 tai 6 saaneiden levyjen id-kenttien muodostama skaala ei ole lineaarinen, eikä kata kaikkia tietokannassa olevia levyjä. Lisäksi taulun tietueiden määrä ei ole vakio, vaan kasvaa.

ajv [23.11.2004 23:36:13]

#

Käviskö:
SELECT * FROM arviot WHERE pisteet >= 5 ORDER BY RAND() LIMIT 0,1 ?

Olga [23.11.2004 23:40:03]

#

Eikö seuraava käy?

SELECT * FROM arviot WHERE pisteet >=5 ORDER BY RAND() LIMIT 1

Edit: heti ku sitä käy syntaksin tarkistamassa manuaalista, niin eiköhän sitä ole jo myöhässä... :)

Triskal [24.11.2004 00:02:07]

#

Kiitos. Minulla on tässä eräs kirja aiheesta, mutta ei siitä ota erkkikään selvää. Ei sieltä ilmennyt sitäkään, että order by rand() olisi mahdollinen.

Ohjelmointiputka = php for dummies online, eli täydellinen paikka minulle.

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta