MySQL order by rand()
Sziasztok!
Nagyon felmérgel a dolog, nem tudok véletlenszerűen kiválasztani 5 sort, ha order by-al rendezem az oszlopokat.
Ez kiválasztja ugye az 5 legnézettebb cikket. Viszont hülyeség a limit 5, mert nekem a legnézettebb 30 kell, amiből aztán véletlenszerűen szeretnék ötöt. Hogy lehet ezt megvalósítani? Próbáltam a rand()-ot mindenféleképpen beletenni, de sehogy nem jött össze, neten alig van erről írás. két limit kellene? egyszer a 30-nak, máskor az 5nek? maradjak phpnél? subqueryval is próbáltam, de ott ugye nincs limit, szóval megbukott a tudomány(om).
Segítség!
Előre is köszi!
■ Nagyon felmérgel a dolog, nem tudok véletlenszerűen kiválasztani 5 sort, ha order by-al rendezem az oszlopokat.
SELECT c.id, c.cim, c.url
FROM cikk c, stat s
WHERE c.id = s.id
ORDER BY s.latogatok DESC
LIMIT 5
FROM cikk c, stat s
WHERE c.id = s.id
ORDER BY s.latogatok DESC
LIMIT 5
Ez kiválasztja ugye az 5 legnézettebb cikket. Viszont hülyeség a limit 5, mert nekem a legnézettebb 30 kell, amiből aztán véletlenszerűen szeretnék ötöt. Hogy lehet ezt megvalósítani? Próbáltam a rand()-ot mindenféleképpen beletenni, de sehogy nem jött össze, neten alig van erről írás. két limit kellene? egyszer a 30-nak, máskor az 5nek? maradjak phpnél? subqueryval is próbáltam, de ott ugye nincs limit, szóval megbukott a tudomány(om).
Segítség!
Előre is köszi!
Allekérdezés
én szóltam
MySQL - 5.0.45:
#1235 - This version of MySQL doesn't yet support 'LIMIT & IN/ALL/ANY/SOME subquery'
inline view
Felhő
30at
ez lesz
temp tábla?
mit?
stored procedure