Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > MySQL > Число строк в результате запроса


Автор: mgukov 28.3.2011, 01:37
Как можно подсчитать число строк в результате запроса, если запрос формирую не я? Я лишь знаю, что результатом запроса будет таблица т.е. запрос SELECT со всевозможными реляционными операторами и может быть с LIMIT'ом. А мне нужно применить к этому запросу собственный LIMIT(при этом число полученных строк должно быть <= числу строк оригинального запроса), и узнать кол-во строк в результате оригинального запроса.

Вариант 
Код

select sql_calc_found_rows * from ("query") q limit n;
select found_rows();

не подходит т.к. практически пропадает смысл моего LIMIT и 
Код

(select * from table limit n) limit m

возвращает m строк

Автор: skyboy 28.3.2011, 08:15
ты же новых условий не добавляешь?
вот смотри, если оригинальный запрос вернул 10, а ты хотел было добавить лимит 5, то понятно, что твой добавленный лимит отобрал бы 5 записей. А если бы оригинальный запрос выбрал 3 записи, то твой лимит ни на что бы не повлиял.
а вообще, ответ на вопрос: "обернуть в подзапрос"

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)