:: Не фоксом единым
SUM(IIF()) во вьюшке MSSQL
_vit
Автор

Сообщений: 5175
Дата регистрации: 29.07.2002
Привет коллеги!

Есть работающий запрос.
Не могу сообразить как описать аналогичную вьюшку.
Проблема в функции выделенной красным.

SELECT [Operation]
,SUM(IIF([Status]='PASS', 1, 0)) as PassedOperations
FROM [ActionsLog]
where ([ActivityDate] between GETDATE()-1 and GETDATE())
group by [Operation]

Если на словах, надо представить сколько разных операций со статусом PASS было за период времени.

MSSQL (кажется 2012)
Ratings: 0 negative/0 positive
Re: SUM(IIF()) во вьюшке MSSQL
leonid

Сообщений: 3204
Откуда: Рига
Дата регистрации: 03.02.2006
Это в смысле, как IIF пишется на SQL?

SUM(case when Status = 'PASS' then 1 else 0 end) as PassedOations

Впрочем, за MSSQL не поручусь, я на нем лет 20, как не писал.
Ratings: 0 negative/0 positive
Re: SUM(IIF()) во вьюшке MSSQL
PaulWist

Сообщений: 14618
Дата регистрации: 01.04.2004
IIF([Status]='PASS', 1, 0)

Такой синтаксис вполне рабочий, вроде с MSSQL 2014


------------------
Есть многое на свете, друг Горацио...
Что и не снилось нашим мудрецам.
(В.Шекспир Гамлет)
Ratings: 0 negative/0 positive
Re: SUM(IIF()) во вьюшке MSSQL
_vit
Автор

Сообщений: 5175
Дата регистрации: 29.07.2002
Разобрался.
Стал делать репрокод для демонстрации проблемы и нашел где я лопух.

Я пытался сделать вьюшку в дизайнере MSSMS а он такую конструкцию распарсить не может. Ругается на знак =.
А если делать вьюшку скриптом все в поряде!
Ratings: 0 negative/0 positive


Извините, только зарегистрированные пользователи могут оставлять сообщения в этом форуме.

On-line: 4 (Гостей: 4)

© 2000-2024 Fox Club 
Яндекс.Метрика