Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2005.06.29;
Скачать: [xml.tar.bz2];

Вниз

Как подсчитать кол-во уникальных значений поля с учетом 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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.08 c
4-1114577414
Леприкон
2005-04-27 08:50
2005.06.29
Handle процесса который запустил мой процесс


1-1117708355
BasiL_666_
2005-06-02 14:32
2005.06.29
Unable to invoke....


14-1117606571
NightStranger
2005-06-01 10:16
2005.06.29
Следующий вопрос на засыпку


11-1101629746
MTsv DN
2004-11-28 11:15
2005.06.29
И снова про DLL :o)


14-1117691481
boriskb
2005-06-02 09:51
2005.06.29
Америка форева!





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский