Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Общее количество  [new]
Marin_1a
Member

Откуда:
Сообщений: 125
Добрый день!
Подскажите пожалуйста как получить общее количество от двух отчетов,если они группируются по имени(ASSIGNEE)?
К примеру первый запрос выводит 5, а второй отчет выводит 7,а нужно получить 12(общее)


1)
SELECT COUNT(*)
FROM [DBO].[INCIDENTSM1] I
INNER JOIN [DBO].[REQUESTM1] R on R.DDC_INCIDENT_ID = I.INCIDENT_ID
WHERE CLOSURE_CODE = 'Escalation Cancelled'
AND R.FOLDER = 'EGK'
GROUP BY ASSIGNEE

2)
SELECT COUNT(*)
FROM [DBO].[INCIDENTSM1] I
INNER JOIN [dbo].[PROBSUMMARYM1] P on P.INCIDENT_ID = I.INCIDENT_ID
WHERE P.RESOLUTION_CODE = 'Escalation Cancelled'
AND P.FOLDER = 'EGK'
GROUP BY ASSIGNEE
30 июн 17, 13:22    [20602694]     Ответить | Цитировать Сообщить модератору
 Re: Общее количество  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 7663
Marin_1a,

select ( 1) ) + ( 2) ) result
30 июн 17, 13:28    [20602726]     Ответить | Цитировать Сообщить модератору
 Re: Общее количество  [new]
Marin_1a
Member

Откуда:
Сообщений: 125
Владислав Колосов,
А группировка по имени?
30 июн 17, 13:38    [20602779]     Ответить | Цитировать Сообщить модератору
 Re: Общее количество  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 7663
Marin_1a,

какому имени? Вы два счетчика возвращаете, две константы.
а плюс б надо сделать, я написал - как.
30 июн 17, 13:46    [20602821]     Ответить | Цитировать Сообщить модератору
 Re: Общее количество  [new]
Marin_1a
Member

Откуда:
Сообщений: 125
Владислав Колосов
Marin_1a,

select ( 1) ) + ( 2) ) result


попробовала сделать так, но результат не группирует по ASSIGNEE,выводит общее количество :(



SELECT ASSIGNEE,
(
SELECT COUNT(*)
FROM [DBO].[INCIDENTSM1] I
INNER JOIN [DBO].[REQUESTM1] R on R.DDC_INCIDENT_ID = I.INCIDENT_ID
WHERE R.CLOSURE_CODE = 'Escalation Cancelled'
AND R.FOLDER = 'EGK'
GROUP BY ASSIGNEE
)
+
(
SELECT COUNT(*)
FROM [DBO].[INCIDENTSM1] I
INNER JOIN [dbo].[PROBSUMMARYM1] P on P.INCIDENT_ID = I.INCIDENT_ID
WHERE P.RESOLUTION_CODE = 'Escalation Cancelled'
AND P.FOLDER = 'EGK'
GROUP BY ASSIGNEE) RESULT
FROM [DBO].[INCIDENTSM1]
GROUP BY ASSIGNEE

К сообщению приложен файл. Размер - 1Kb
30 июн 17, 13:49    [20602840]     Ответить | Цитировать Сообщить модератору
 Re: Общее количество  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 7663
Marin_1a,

Вы же общее количество хотели.
автор
первый запрос выводит 5, а второй отчет выводит 7,а нужно получить 12
30 июн 17, 13:51    [20602850]     Ответить | Цитировать Сообщить модератору
 Re: Общее количество  [new]
aleks2
Guest
Владислав Колосов
Marin_1a,

Вы же общее количество хотели.
автор
первый запрос выводит 5, а второй отчет выводит 7,а нужно получить 12


Пять пишем, семь на ум пошло.

ЗЫ. Персонаж должен разучить группировку сгруппированного.
30 июн 17, 13:55    [20602876]     Ответить | Цитировать Сообщить модератору
 Re: Общее количество  [new]
Marin_1a
Member

Откуда:
Сообщений: 125
aleks2
Владислав Колосов
Marin_1a,

Вы же общее количество хотели.
пропущено...


Пять пишем, семь на ум пошло.

ЗЫ. Персонаж должен разучить группировку сгруппированного.


Marin_1a
Подскажите пожалуйста как получить общее количество от двух отчетов,если они группируются по имени(ASSIGNEE)?


:)
30 июн 17, 14:29    [20603063]     Ответить | Цитировать Сообщить модератору
 Re: Общее количество  [new]
aleks2
Guest
Marin_1a
aleks2
пропущено...


Пять пишем, семь на ум пошло.

ЗЫ. Персонаж должен разучить группировку сгруппированного.


Marin_1a
Подскажите пожалуйста как получить общее количество от двух отчетов,если они группируются по имени(ASSIGNEE)?


:)


select sum(cnd), ASSIGNEE
from (
SELECT COUNT(*) as cnt, ASSIGNEE
FROM [DBO].[INCIDENTSM1] I
 INNER JOIN [DBO].[REQUESTM1] R on R.DDC_INCIDENT_ID = I.INCIDENT_ID
WHERE CLOSURE_CODE = 'Escalation Cancelled'
AND R.FOLDER = 'EGK'
GROUP BY ASSIGNEE

union all

SELECT COUNT(*) as cnt, ASSIGNEE
FROM [DBO].[INCIDENTSM1] I
 INNER JOIN [dbo].[PROBSUMMARYM1] P on P.INCIDENT_ID = I.INCIDENT_ID
WHERE P.RESOLUTION_CODE = 'Escalation Cancelled'
AND P.FOLDER = 'EGK'
GROUP BY ASSIGNEE 
) as t
group by ASSIGNEE 
30 июн 17, 14:31    [20603081]     Ответить | Цитировать Сообщить модератору
 Re: Общее количество  [new]
Marin_1a
Member

Откуда:
Сообщений: 125
aleks2,

благодарю!
30 июн 17, 14:41    [20603128]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить