Cóż, z komentarza jesteś również zadowolony z teoretycznej odpowiedzi.
Jeśli masz tablicę ze wszystkimi wierszami, użyj array_unique()
aby pozbyć się zduplikowanych wierszy, użyj shuffle()
aby je wymieszać, a na koniec możesz wziąć kawałek za pomocą array_slice()
.
EDYTUJ:
Możesz to ulepszyć, gdy już nie zaznaczasz zduplikowanych wierszy, wtedy nie musisz używać array_unique()
. W tym celu użyj DISTINCT
. A jeśli chcesz zrobić wszystko w zapytaniu, możesz zrobić coś takiego:
SELECT DISTINCT column FROM table
ORDER BY RAND()
LIMIT 1000