Я хочу выделить несколько строк с определенным фильтром, но не ограничивайтесь, если я не получу, по крайней мере, 40 строк.
Это псевдо-пример:
SELECT * FROM `table`
WHERE
SUM(1) < 40 OR
`age` > 18
Это похоже на LIMIT, но LIMIT будет учитывать фильтр WHERE. Я хочу игнорировать фильтр, если у меня нет как минимум 40 строк (но я принимаю первые строки).
Как мне это сделать?
Редактировать : многие люди сомневались в том, что я действительно хотел.
Это пример:
ID AGE
1 10
2 20
3 30
4 10
5 20
6 30
7 10
Я хочу получить первые 2 строки когда-либо. И только после как минимум двух строк получить новые строки, соответствующие заданным условиям (ГДЕ).
Например: я хочу, чтобы в первых 2 рядах было больше строк, возраст которых равен 30. Результат будет эквивалентен:
ID AGE
1 10 <first>
2 20 <second>
3 30 <conditional>
6 30 <conditional>