Вот мой оригинальный запрос ...
SELECT `id`
FROM `properties`
LIMIT 10, 20
Условие LIMIT
предназначено для нумерации страниц.
Теперь я должен получить все как раньше, но мне нужно получить только треть строк, где присутствует условие.
Я придумал это, просто добавив LIMIT 30
, прежде чем я понял, как это сделать (всего совпадений строк / 3) * 2.
SELECT `id`
FROM `properties`
WHERE `id` NOT IN (SELECT `id`
FROM `properties`
WHERE `vendor` = "abc"
ORDER BY RAND()
LIMIT 30)
LIMIT 10, 20
MySQL сказал ...
1235 - Эта версия MySQL еще не поддерживает подзапрос LIMIT & IN / ALL / ANY / SOME '
Я думаю, я не могу использовать LIMIT
в подзапросе.
Так что это много вопросов, но все связанные ...
- Есть ли обходной путь для
LIMIT
в подзапросе?
- Могу ли я выбрать 1/3 совпадающих строк с MySQL?
- Нужно ли превратить это в 2 запроса или просто выбрать все и сбросить строки, которые не требуются в PHP?