raa
(Rudenkosasha)
1
Заметил что такой код
something::model()->countBySql("select * from table1, table2 where table1.f1 = table2.f1");
выбирает все записи, вместо того что бы сделать запрос вида
"select count(*) from table1, table2 where table1.f1 = table2.f1"
Т.е. метод таки возвращает кол-во найденых строк.
НО, запрос не меняет, т.е. вытягивает все найденные данные !
Это вообще нормально ?
pirrat
(Pstudia)
2
Ну если по API не понятно как работать с методом, то стоит посмотреть риализацию, тогда бы стало ясно что надо делать так:
$count = something::model()->countBySql("select COUNT(*) from table1, table2 where table1.f1 = table2.f1");
фишка метода лишь в том, что он возвращает первое поле, первой строки из результата.
raa
(Rudenkosasha)
3
Если я не ошибаюсь, то запрос типа
something::model()->count();
подставляет автоматом count(*)