o_nix
Хранитель порядка
- Регистрация
- 7 Ноя 2007
- Сообщения
- 1.070
- Реакции
- 1.063
- Автор темы
- #1
Есть запрос
он выдаёт 3 рандомных поста
далее эти данные я использую в своих целях.
но мне эти данные которые мне были выданы нужно обновить
пометить их чтобы они не выдавались при следующем запросе
ясное дело что можно сделать отдельный запрос UPDATE
но это делать не хочется
По "гугелучебнику" родил вот такой вот запрос
Но злое MySQL выдаёт в ответ это
Спецы подскажите можно ли всё таки объединить всё в один запрос чтобы результатом был такой же вывод как и при обычном SELECT или только делать отдельный UPDATE ?
Код:
SELECT * FROM `posts` WHERE `cat` = 2 AND `status` = 0 ORDER BY RAND( ) LIMIT 3
далее эти данные я использую в своих целях.
но мне эти данные которые мне были выданы нужно обновить
пометить их чтобы они не выдавались при следующем запросе
ясное дело что можно сделать отдельный запрос UPDATE
но это делать не хочется
По "гугелучебнику" родил вот такой вот запрос
Код:
UPDATE `posts` SET `status` = `1` WHERE `id` IN (
SELECT * FROM `posts` WHERE `cat` = 2 AND `status` = 0 ORDER BY RAND( ) LIMIT 3
)
Но злое MySQL выдаёт в ответ это
Код:
Ответ MySQL: Документация
#1235 - This version of MySQL doesn't yet support 'LIMIT & IN/ALL/ANY/SOME subquery'
Спецы подскажите можно ли всё таки объединить всё в один запрос чтобы результатом был такой же вывод как и при обычном SELECT или только делать отдельный UPDATE ?