sql >> Databáze >  >> RDS >> Mysql

Jaký je nejlepší způsob náhodného 1000 řádků (nikoli duplicitních řádků) z mysql?

No z komentáře jste také spokojeni s teoretickou odpovědí.

Pokud máte pole se všemi řádky, použijte array_unique() abyste se zbavili duplicitních řádků, použijte shuffle() promíchejte je a na konci si můžete vzít plátek pomocí array_slice() .

UPRAVIT:

Můžete to zlepšit, když již nevyberete duplicitní řádky, pak nemusíte používat array_unique() . Pro toto použití DISTINCT . A pokud chcete udělat vše v dotazu, můžete udělat něco takového:

SELECT DISTINCT column FROM table
ORDER BY RAND()
LIMIT 1000



  1. Úvod do SQL spojení

  2. Jak používat funkce SQL Server AlwaysOn

  3. Zrušit přístup k databázi postgres pro roli

  4. Vytvořte materializovaný pohled, který denně obnovuje záznamy