Я знаю об одной небольшой компании, которые отправили продукт почтового сервера в рынок. У них было по крайней мере 2 человека рабочий полный рабочий день на проекте.
кроме того, у крупного игрока в бизнесе IT есть несколько сотрудников, использующих D в больших внутренних проектах.
Далее я знаю об одном финансировании предприятия поиска компании, несколько (по крайней мере 4) сотрудники в меньших компаниях с помощью D или неполный рабочий день или полный рабочий день и по крайней мере пара (включая меня) активно поиск возможностей на консультационном рынке.
я, вероятно, не учел некоторых, что я должен был знать о, и вероятно некоторые, которых я не услышал о, но который все еще существует, поскольку вышеупомянутое - более или менее это, я знаю меня через сообщество.
небольшой процент А моего текущего дохода прибывает из D.
Добавьте в таблицу столбец, который будет содержать метку времени UNIX.
Один раз в день или в любой удобный для вас период времени вы запускаете запрос, который обновляет этот столбец.
В в этом случае ваш запрос должен выполняться в полночь и выглядеть примерно так.
UPDATE table SET rand_id = (UNIX_TIMESTAMP() + (RAND() * 86400));
Затем для получения строк вы используете запрос, подобный этому.
SELECT * FROM table WHERE rand_id > UNIX_TIMESTAMP() ORDER BY rand_id ASC LIMIT 20
Использование столбца с заранее определенным случайным значением избавляет вас от необходимости запускать функция рандомизации для каждой отдельной строки в таблице для каждого отдельного запроса к странице.
Другая возможность - сгенерировать случайную перестановку , сохранить ее в сеансе (или только ту часть, которая вам нужна, алгоритм легко адаптируется) и получить вопросы, когда они вам нужны.
Вы можете использовать функцию rand
в MySQL, чтобы упорядочить строки, а затем взять первые 10 (или сколько угодно) с ограничением
.
select * from table order by rand() limit 10
Если вам нужны только математические вопросы:
select * from table where type = 1 order by rand() limit 10