a5l73i
سه شنبه 28 اردیبهشت 1389, 17:26 عصر
با سلام خدمت دوستان
اولا من سرچ کردم ولی مطلبی که جواب منو بده نبود به همین خاطر این موضوع رو بیان کردم.
ثانیا
برای انتخاب n رکورد بصورت تصادفی میشه از دستور
select * from table order by rand () limit n
استفاده کرد ولی می دونید که سرعت خوبی برای بانک های حجیم نداره.
من از کوئری زیر استفاده کردم.
SELECT * FROM `table` WHERE id >= (SELECT FLOOR( MAX(id) * RAND()) FROM
`table` ) ORDER BY id LIMIT 42;
حالا موضوع اینه که این دستور تعداد 42 ردیف خروجی رو بصورت تصادفی نشان نمی ده .
ممنون می شم اگه اطلاعات کاملتری رو به من بدید.
اولا من سرچ کردم ولی مطلبی که جواب منو بده نبود به همین خاطر این موضوع رو بیان کردم.
ثانیا
برای انتخاب n رکورد بصورت تصادفی میشه از دستور
select * from table order by rand () limit n
استفاده کرد ولی می دونید که سرعت خوبی برای بانک های حجیم نداره.
من از کوئری زیر استفاده کردم.
SELECT * FROM `table` WHERE id >= (SELECT FLOOR( MAX(id) * RAND()) FROM
`table` ) ORDER BY id LIMIT 42;
حالا موضوع اینه که این دستور تعداد 42 ردیف خروجی رو بصورت تصادفی نشان نمی ده .
ممنون می شم اگه اطلاعات کاملتری رو به من بدید.