sql >> Database teknologi >  >> RDS >> Mysql

Alternativ til ORDER BY RAND() på sammenkoblede tabeller?

Burçin Yazıcı - Jeg bruger MySQL, så tidsstempler vil ikke give mili/mikro sekunder. Jeg prøvede at bruge PHP's microtime() og indsætte det i forespørgslen, men dette resulterer stadig i 'brug af midlertidig; ved at bruge filesort', når du forklarer.

For øjeblikket lader jeg forespørgslen være usorteret, returnerer alle resultater og bruger derefter PHP's

mysql_data_seek($result, rand(0, mysql_num_rows($result)-1));
$row=mysql_fetch_object($result);

for at vælge en tilfældig række. Jeg er forsigtig med virkningen af ​​ydeevnen af ​​mysql_data_seek men det fjerner presset fra databasen for nu.




  1. Mysql sammenligner kommasepareret felt med enkelt streng

  2. Tidskompleksitet ved at sortere en database

  3. Er der nogen måde at kontrollere ydeevnen af ​​mysql indeksering

  4. Opdater to forskellige rækker i én linje af SQL