sql >> Database >  >> RDS >> Mysql

Alternatief voor ORDER BY RAND() op samengevoegde tabellen?

Burçin Yazıcı - Ik gebruik MySQL zodat tijdstempels geen mili/microseconden opleveren. Ik heb geprobeerd PHP's microtime() te gebruiken en dat in de query in te voegen, maar dit resulteert nog steeds in 'gebruik tijdelijk; filesort' gebruiken bij het uitleggen.

Voorlopig laat ik de zoekopdracht ongesorteerd, retourneer ik alle resultaten en gebruik dan PHP's

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

om een ​​willekeurige rij te kiezen. Ik ben voorzichtig met de prestatie-impact van mysql_data_seek maar het neemt voorlopig de druk van de database weg.




  1. VERVANGEN IN vs Update

  2. Bestaande PHP/MYSQL/-website converteren naar native IOS/Android-apps

  3. WooCommerce geserialiseerde metawaarde-array in wp_postmeta-tabel

  4. AJAX Post Fatal Error-kolom kan niet nul zijn