Для небольшой таблицы, подобной вашей, этого должно быть достаточно:
SELECT * FROM table ORDER BY RAND() LIMIT 40;
Обратите внимание, что это не подходит для больших таблиц, поскольку MySQL должен будет выполнить сканирование таблицы и упорядочить все строки в таблице.на использование ORDER BY RAND()
.Для больших таблиц вам придется реализовывать это в основном в коде приложения, отслеживая, какие строки вы уже получили, и генерируя случайные идентификаторы для извлечения.