Показать сообщение отдельно
Старый 05.01.2011, 19:09
VadimuZ вне форума Посмотреть профиль Отправить личное сообщение для VadimuZ Найти все сообщения от VadimuZ
  № 1  
Ответить с цитированием
VadimuZ
 
Аватар для VadimuZ

Регистрация: Sep 2004
Сообщений: 129
Отправить сообщение для VadimuZ с помощью ICQ
Attention Запросы с исключением

Есть таблица юзеров as U (в таблице 2 миллиона записей)
Есть запрос который выводи в произвольном порядке 100 записей из таблицы юзеров, для конкретно выбранного юзера (U.id).
Нужно запомнить что что для выбранного юзера U.id мы уже показывали вот этих 100 рендомных юзеров, и как исключение при следующих запросах их не отображать.

Стандартный вариант, завести еще одну таблицу as D и туда сувать, тех кто попал под рендом и кому этот рендом отобразился, но как строить запрос с исключением? and U.id != D.uid and ...

Либо завести еще одно поле в таблице U.lockField (text) и туда для конкретно выбранного плюсовать чрез разделитель id тех кого уже отобразили, а потом делать выборку с исключением через like но тогда не будут фурыкать индексы, и база будет очень разростаться при большем количестве запросов.

Как лучше реализовать подобное?
__________________
www.vadimuz.ru


Последний раз редактировалось VadimuZ; 05.01.2011 в 22:08.