The-Last-Escape Posted May 1, 2007 Share Posted May 1, 2007 ok, i got this code which is supposed to select a random row in mysql. select * from quotes order by rand() limit 1 i have 10 rows in the table, and i seem to get the same row each time! i don\'t understand. maybe after reloading about 50 times i\'ll get one different row, then it will go back to the previous one for another 30 times. i have no idea why it\'s really not randomizing these. any ideas? Link to comment https://forums.phpfreaks.com/topic/49557-random-row-in-mysql/ Share on other sites More sharing options...
MadTechie Posted May 1, 2007 Share Posted May 1, 2007 thats the most common way but try this SELECT * FROM `quotes` WHERE id >= (SELECT FLOOR( MAX(id) * RAND()) FROM `quotes` ) ORDER BY id LIMIT 1; i assume you have an ID field! it seams to take up less CPU and be more random (win win) Link to comment https://forums.phpfreaks.com/topic/49557-random-row-in-mysql/#findComment-242981 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.