Форум: "Базы";
Текущий архив: 2004.10.03;
Скачать: [xml.tar.bz2];
ВнизКоличество возвращаемых записей Найти похожие ветки
← →
ksa2002 (2004-09-06 11:03) [0]Как узнать количество возвращаемых записей в запросе?
Если select count(name) from main where code=1 , то здесь всё ясно , а вот если так select count(name,name1,name2) from main where code=1 т.е. по нескольким полям ? (так ошибка). Как тогда получить количество записей ?
← →
Sergey_Masloff (2004-09-06 11:08) [1]Ну а у тебя что количество name может отличаться от количества name1?
И вообще тебе ж нужно число записей а не число полей так что смело select (*) from ...
← →
Sergey13 © (2004-09-06 11:08) [2]А смысл какой в count(name,name1,name2)?
← →
ksa2002 (2004-09-06 11:14) [3]но там есть ещё и where code=1 , которое ограничиавет число возвращаемых записей .
> А смысл какой в count(name,name1,name2)?
а как тогда узнать количество записей удавлетворяющих данному запросу ?
← →
qweqwe © (2004-09-06 11:20) [4]а тебе где это надо знать? если это для программы тогда
Query.RecordCount(); вернет значение типа интнджер
← →
сергей1 (2004-09-06 11:21) [5]select count(*) from main where code=1
почитай основы sql
← →
Sergey_Masloff (2004-09-06 11:24) [6]qweqwe © (06.09.04 11:20) [4]
>а тебе где это надо знать? если это для программы тогда
>Query.RecordCount(); вернет значение типа интнджер
Которое (значение) будет указывать число записей которое получил в свой буфер клиент (обычно = сколько помещается в видимой части грида, если грид не подключен то 1). И к числу записей УДОВЛЕТВОРЯЮЩИХ УСЛОВИЮ ОТБОРА это имеет отношение весьма отдаленное.
Можно конечно сделать FetchAll() но... Особенно если запрос вида select (*) from MyTableWithTwoBillionRec
← →
ksa2002 (2004-09-06 11:34) [7]я хочу сразу количество записей получить в SELECTE (аналогично count) ,но для выборки по нескольким полям
← →
Плохиш © (2004-09-06 11:51) [8]
> Sergey_Masloff (06.09.04 11:08) [1]
> Ну а у тебя что количество name может отличаться от количества
> name1?
Функция count(name) возврашает количество записей name которые не являются null, так что в обшем случае (select count(name) from main where code=1) <> (select count(name1) from main where code=1)
По сабжу select count(*) ...
> ksa2002 (06.09.04 11:34) [7]
> я хочу сразу количество записей получить в SELECTE (аналогично
> count) ,но для выборки по нескольким полям
Можно ещё раз на пальцах объяснить, что ты хочешь?
← →
Sergey_Masloff (2004-09-06 11:59) [9]Плохиш © (06.09.04 11:51) [8]
>Функция count(name) возврашает
Мне это можно не рассказывать. Мой вопрос был мотивирован исключительно желанием понять что же В ДЕЙСТВИТЕЛЬНОСТИ нужно было автору.
← →
ksa2002 (2004-09-06 12:28) [10]Перефразирую !
Как узнать количество записей (в БД) удавлетворяющих , какому либо условию.
← →
Виктор © (2004-09-06 12:29) [11]Думаю тебя устроит такой вариант:
elect count(name),count(name1),count(name2)
from main where code=1
group by name,name1,name2
Одно только замечание: если условие where code=1
вернет не одно значение то получишь множесвто count-ов по
нескольким полям.
← →
Sergey_Masloff (2004-09-06 12:33) [12]ksa2002 (06.09.04 12:28) [10]
>Как узнать количество записей (в БД) удавлетворяющих , какому либо условию.
Тебе уже трое сказали:
указать в перечне полей COUNT(*)
и в предложении WHERE условие по которому ты отбираешь.
← →
ksa2002 (2004-09-06 12:33) [13]Bот оно мне и возвращает несколь , и я хочу знать количесвто записей (где запись это name, name1, name2).
← →
ksa2002 (2004-09-06 12:35) [14]Всё дошло :) всем спасибо !
← →
Baloo (2004-09-06 12:56) [15]TSQL Reference:
@@ROWCOUNT
Returns the number of rows affected by the last statement.
------------------
<твой запрос>
select @@rowcount
Если я правильно понял что тебе нужно......
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2004.10.03;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.062 c