Случай SQL Server с сессией

У меня есть проблема, когда я пытаюсь показать результат на основе периода времени, превышающего 24 часа, более 18 часов или менее 18 часов, где мой запрос до сих пор записывается как

SELECT MAX(CASE WHEN DATEDIFF(HH,DATEADD(SECOND, inc.ORIGINATION_DATE, '19700101'),DATEADD(hour,6,GETDATE())) > 24 then 2
WHEN DATEDIFF(HH,DATEADD(SECOND, inc.ORIGINATION_DATE, '19700101'),DATEADD(hour,6,GETDATE())) > 18 then 1
Else 0 End) as DIFFERENCE
FROM dbo.HELP_DESK as inc
WHERE inc.LOGIN_ID in "some user"and NOT EXISTS (SELECT work.Description from dbo.WORKLOG as work WHERE
work.INCIDENT_NUMBER = inc.INCIDENT_NUMBER
and work.WORK_LOG_TYPE =  '16000'
and work.WORK_LOG_SUBMITTER in "User Group")
UNION ALL
SELECT MAX(CASE WHEN DATEDIFF(HH,DATEADD(SECOND, chg.ORIGINATION_DATE, '19700101'),DATEADD(hour,6,GETDATE())) > 24 then 2
WHEN DATEDIFF(HH,DATEADD(SECOND, chg.ORIGINATION_DATE, '19700101'),DATEADD(hour,6,GETDATE())) > 18 then 1
Else 0 End) as DIFFERENCE
FROM dbo.INFRASTRUCTURE_CHANGE as chg
WHERE chg.ASLOGID in "some user"and NOT EXISTS (SELECT work.Description from dbo.WORKLOG as work WHERE
work.CHANGE_ID = chg.CHANGE_ID
and work.WORK_LOG_TYPE =  '31000'
and work.WORK_LOG_SUBMITTER in "User Group")

Мой вывод в этом примере:

+------------+
| DIFFERENCE |
+------------+
|          2 |
|          2 |
+------------+

У меня есть несколько значений> 24, так что очевидно, что из-за объединения я правильно показываю два отдельных значения как 2. Однако я хочу как-то сгруппировать их, чтобы у меня был один выход 2, 1 или 0, который я затем мог бы вывести в сеанс PHP.

какая-то форма подсчета или группы по обеим сторонам кажется неудачной, если я неправильно группирую. Вероятно, есть и лучший способ сделать это, но я, кажется, иду по длинному пути.

Цените любые указания на то, чтобы вывести меня вперед.

0

Решение

Простое изменение с UNION ALL на UNION вернуло единственный результат, который я получил после вывода значения сеанса

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]