Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.06.29;
Скачать: CL | DM;

Вниз

Как подсчитать кол-во уникальных значений поля с учетом NULL   Найти похожие ветки 

 
atruhin ©   (2005-05-17 12:27) [0]

Т.е. проблема в том, что count(distinct Field) не учитывает значения NULL, вложенные запросы типа select count(*) from (select distinct Field ...) в IB не работают. Можно ли решить эту задачу одним запросом без VIEW и  ХП


 
Zacho ©   (2005-05-17 12:59) [1]

А ты несколько записей с NULL собираешься считать за одну уникальную или нет ?


 
Johnmen ©   (2005-05-17 13:05) [2]

count(distinct Field) + 1
или
count(distinct Field) + (select count(*) ... where Field is null)


 
Zacho ©   (2005-05-17 13:25) [3]


> Johnmen ©   (17.05.05 13:05) [2] [Новое
>сообщение][Ответить]
> count(distinct Field) + 1


А если в таблице вообще нет записей с NULL ? :)


 
Johnmen ©   (2005-05-17 13:32) [4]

>Zacho ©   (17.05.05 13:25) [3]

"На нет и вопросов нет" (с)
:)

А что не так ?


 
Zacho ©   (2005-05-17 13:39) [5]


> А что не так ?


В этом случае будет неверный результат :) Я именно про запрос count(distinct Field) + 1
и про случай, когда несколько записей с NULL нужно считать одинаковыми.


 
Polevi ©   (2005-05-17 13:56) [6]

select count(*) group by field


 
Polevi ©   (2005-05-17 13:56) [7]

упс, сорри


 
Polevi ©   (2005-05-17 13:57) [8]

select count(*) from (select field group by field)


 
Zacho ©   (2005-05-17 14:07) [9]

Polevi ©   (17.05.05 13:57) [8]

Ну нету такого в IB, о чём уже упоминалось в посте автора ветки :)


 
Polevi ©   (2005-05-17 14:10) [10]

печально


 
Johnmen ©   (2005-05-17 14:12) [11]

>Zacho ©   (17.05.05 13:39) [5]

Ну это легко исправить.


 
Zacho ©   (2005-05-17 14:13) [12]

Johnmen ©   (17.05.05 14:12) [11]

Как ? На чистом IB SQL в одном запрсе ?
Я сходу не придумал.


 
Johnmen ©   (2005-05-17 14:17) [13]

>Zacho ©   (17.05.05 14:13) [12]

+(select count(1) from .. where exists ...)


 
Zacho ©   (2005-05-17 14:21) [14]

Johnmen ©   (17.05.05 14:17) [13]

О !! Точно ! Проктология конечно, но должно работать :)



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

Текущий архив: 2005.06.29;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.028 c
14-1117171979
MBo
2005-05-27 09:32
2005.06.29
Пятничные головоломные задачки


4-1114814453
Igor_
2005-04-30 02:40
2005.06.29
TServiceApplication и два TService


14-1117136099
Константинов
2005-05-26 23:34
2005.06.29
Что подарить ребенку на день рождения?


5-1088080642
han
2004-06-24 16:37
2005.06.29
record как published свойство


14-1117603804
BiN
2005-06-01 09:30
2005.06.29
С Днем Защиты Детей, что ли