Вниз
Скачать: CL | DM;

Как подсчитать число записей для ЛЮБОГО запроса ?   Найти похожие ветки 

 
Vorobyev Sergey   (2003-05-27 11:13) [0]

Привет всем!
Есть какой нибудь запрос (select * from ... where .. join и т.п.)
с любыми комбинациями выражений..
Так вот есть ли способ подсчитать число записей выдаваемых запросом ?
---
Пояснение:
в программе результат запроса отображается в гриде.
Необходимо в строке статуса отобразить полное количество записей, которые выдал запрос,
причем заранее неизвестно какие будут запросы..


 
Zacho ©   (2003-05-27 11:18) [1]

Для "любого" запроса - никак.
Только FetchAll + RecordCount.


 
Соловьев ©   (2003-05-27 11:18) [2]

Open;
FetchAll;
Edit1.Text := Format("Кол-во записей %d",[RecordCount]);


 
Danilka ©   (2003-05-27 11:35) [3]

а select count(*) from (select ...)
в IB не пройдет?


 
Zacho ©   (2003-05-27 11:39) [4]


> Danilka © (27.05.03 11:35)

Нет в IB SELECT ... FROM (SELECT ...


 
Sergey13 ©   (2003-05-27 11:51) [5]

В DbGridEh можно приделать футер с таким прибамбасом, но делать он будет (подозреваю 8-) как написал Zacho © (27.05.03 11:18)


 
Danilka ©   (2003-05-27 11:51) [6]

Zacho © (27.05.03 11:39)
жаль.

тогда можно еще вот-так:
create view xxx
...
select count(*) from xxx
drop view xxx

на некоторых таблицах это будет быстрее чем все фэтчить на клиента. :))


 
Danilka ©   (2003-05-27 11:56) [7]

А вообще, правильней парсить запрос на клиенте, и создавать на его основе запрос на получение кол-ва записей. Типа такого:
запрос select field1, field2 ...
делать: select count(*) ...

А еще правильнее пересмотреть бизнес-логику, может окажется, что и не стоит овчинка выделки, и нафиг кол-во записей не нужно.


 
Sergey13 ©   (2003-05-27 11:59) [8]

2Danilka © (27.05.03 11:51)
>тогда можно еще вот-так:
Это ты чего такое забористое куришь? Поделись. 8-)


 
Danilka ©   (2003-05-27 12:02) [9]

Sergey13 © (27.05.03 11:59)
:))
просто настроение сегодня что-то хорошее


 
Vorobyev Sergey   (2003-05-27 12:14) [10]


> А еще правильнее пересмотреть бизнес-логику, может окажется,
> что и не стоит овчинка выделки, и нафиг кол-во записей не
> нужно.


Исключено..
Хотя выход я уже нашел..


 
DarkGreen ©   (2003-05-27 13:54) [11]

А что мешает сделать:

select count(*), Ваши_поля_для_отображения, from Ваши_таблицы ....

А в гриде первое поле не светить, хотя select count(*) - это мраки.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.011 c
1-60170
deedlit
2003-06-06 15:19
2003.06.19
Оскомина работы с эксплорером...


3-60040
Taktic
2003-05-28 04:27
2003.06.19
Как вставить картинку вместо числового значения в DBGrid


3-60039
Troy_piter
2003-05-27 01:17
2003.06.19
Помогите, пожалуйста, с редактированием связанных таблиц!


14-60328
Ежик
2003-06-03 17:22
2003.06.19
Занялся я тут одним проектом....


3-60066
(C) Beginner
2003-05-28 13:02
2003.06.19
Ошибки использования БД




   Наверх