как мога да преброя ... ?

2 отговора 164 прегледа
#1

как мога да преброя ... ?

hi,
имам един израз които претърсва таблици, и ми изважда резултатите лимитиранио до някаква бройка.
Трябва ми едновременно с това да знам, колко са всичките редове които отговарят на търсенето.

Знам как да го направя с 2 SQL израза, един за търсенето и вземането на лимитираните рецултати, и втори за преброяването.

1 - SELECT * FROM table1, table2 WHERE col1 = x AND col2 = y LIMIT 15;
2 - SELECT COUNT(*) FROM table1, table2 WHERE col1 = x AND col2 = y;

Мога ли обаче да го направя само с 1 SQL?
10х

Отговор
в отговор на mia #2

Re: как мога да преброя ... ?

Ако случайно си с MySQL, което не се вижда от твоя постинг и ако си с версия 4.0 можеш да използваш директивото SQL_CALC_FOUND_ROWS заедно с функцията FOUND_ROWS

SELECT SQL_CALC_FOUND_ROWS * FROM table1, table2 WHERE col1 = x AND col2 = y LIMIT 15;
SELETC FOUND_ROWS();

salle.online.bg/sig
Отговор
в отговор на salle #3

Re: как мога да преброя ... ?

брр, извинявайте, забравих за това да спомена какво използвам.
MySQL, 3.23.49

Отговор