Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Несколько вычислений в одном запросе / 4 сообщений из 4, страница 1 из 1
06.03.2019, 14:53
    #39783016
*Ann*
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько вычислений в одном запросе
Добрый день.
Есть такой запрос:
select
eah.mrf_id,
count(eah.orponid)

from public.ent_as_house eah
JOIN public.ent_as_addrobj eaa on eah.parent_id = eaa.id

where eah.livestatus = 1
and eah.parent_id is not null
and exists (select 1 from public.ent_id_vs_o_add where house_id=eah.id)
and eah.adr_adm_ter is not null
and eah.coordinates_id is not null

group by eah.mrf_id

Подскажите, пожалуйста, как добавить еще один столбец, в котором также будет считаться count(eah.orponid), но без условия eah.coordinates_id is not null
...
Рейтинг: 0 / 0
06.03.2019, 15:01
    #39783021
Щукина Анна
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько вычислений в одном запросе
*Ann*,

Изначально выбирать без этого условия и считать полный (безусловный) агрегат. Условный считать через sum(case when <ваше условие с проверкой поля на из нулл > then 1 else 0 end)
...
Рейтинг: 0 / 0
07.03.2019, 06:44
    #39783311
Kopelly
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько вычислений в одном запросе
Count игнорует значения null. Поэтому можно так:

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
select
eah.mrf_id,
count(eah.orponid|eah.coordinates),  
count(eah.orponid)

from public.ent_as_house eah
JOIN public.ent_as_addrobj eaa on eah.parent_id = eaa.id

where eah.livestatus = 1
and eah.parent_id is not null
and exists (select 1 from public.ent_id_vs_o_add where house_id=eah.id)
and eah.adr_adm_ter is not null
and _id is not null
...
Рейтинг: 0 / 0
07.03.2019, 06:45
    #39783312
Kopelly
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Несколько вычислений в одном запросе
Пытался зачеркнуть последнюю строчку условия

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
select
eah.mrf_id,
count(eah.orponid|eah.coordinates_id),  
count(eah.orponid)

from public.ent_as_house eah
JOIN public.ent_as_addrobj eaa on eah.parent_id = eaa.id

where eah.livestatus = 1
and eah.parent_id is not null
and exists (select 1 from public.ent_id_vs_o_add where house_id=eah.id)
and eah.adr_adm_ter is not null
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Несколько вычислений в одном запросе / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]