Задать вопрос
@glebn
Золото, а не человек!

Как получить запись из таблицы БД по очереди?

Всем доброго дня!
Подскажите пожалуйста может кто сталкивался, нужно реализовать следующее:
есть таблица users, в ней соответственно пользователи (поля id, name, mail и т.п).
Есть функция которая вытягивает из таблицы ОДНОГО пользователя по определенным параметрам, скажем по роли доступа. Например функция get_user() возвращает результат
SELECT * FROM users WHERE user_role = "admin" ORDER BY id DESC LIMIT 1

Нужно придумать алгоритм (архитектуру) функции чтоб get_user() возвращала каждый раз следующего по списку пользователя по очереди в таблице.

Пока мысли такие: добавить в users поле curent_que со значением (0|1) которое после каждого вызова функции меняться на противоположное, и например в таблицу с настройками всего проекта добавить настройку current_queс теми же возможными значениями которые будут меняться на противоположное при конце очереди (нулевой результат функции). И далее добавить очередь в параметры запроса.

Есть ли у кого идеи на этот счет?
  • Вопрос задан
  • 178 просмотров
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 2
dima9595
@dima9595
Junior PHP
Можешь хранить id предыдущего (просмотренного) пользователя в сессии, и потом, при новом запросе получаешь следующий. А если же id n+1 не найден, то делаем следующий n+1...
Ответ написан
Комментировать
Astrohas
@Astrohas
Python/Django Developer
можете хранить в кэше, или в поле отдельной таблицы.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы