Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Запрос внутри конструкции sum / 8 сообщений из 8, страница 1 из 1
21.02.2019, 09:30
    #39777098
Laikon
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запрос внутри конструкции sum
Всем доброго времени суток!

Есть потребность поставить условие внутри конструкции sum, чтобы суммировались значения одного столбца, в зависимости от значения другого столбца.

для примера:
select sum(a case b='5')

Хочу сразу оговорится, что условие нужно именно внутри sum, так как это только часть большого запроса между несколькими таблицами.
...
Рейтинг: 0 / 0
21.02.2019, 09:37
    #39777099
Дмитрий Мух
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запрос внутри конструкции sum
Laikon,

Код: sql
1.
SELECT SUM(CASE WHEN b = '5' THEN a ELSE 0 END)
...
Рейтинг: 0 / 0
21.02.2019, 09:37
    #39777100
Sergey Sizov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запрос внутри конструкции sum
LaikonЕсть потребность поставить условие внутри конструкции sum, чтобы суммировались значения одного столбца, в зависимости от значения другого столбца.

для примера:
select sum(a case b='5')
Ну если есть, то ставьте, разрешаем. Только в соответствии с документацией, а не отсебятину. Где вы видели case в том виде, который вы тут продемонстрировали?
...
Рейтинг: 0 / 0
21.02.2019, 09:39
    #39777102
Sergey Sizov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запрос внутри конструкции sum
Дмитрий МухLaikon,

Код: sql
1.
SELECT SUM(CASE WHEN b = '5' THEN a ELSE 0 END)

Или с некоторых пор:
Код: sql
1.
SELECT SUM(iif(b = '5', a, 0))
...
Рейтинг: 0 / 0
21.02.2019, 09:57
    #39777104
Laikon
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запрос внутри конструкции sum
Sergey Sizov,

Ваш вариант мне особенно понравился! Огромное спасибо!Все получилось
...
Рейтинг: 0 / 0
21.02.2019, 09:57
    #39777105
Laikon
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запрос внутри конструкции sum
Дмитрий Мух,

Вам тоже СПАСИБО, вариант сработал!
...
Рейтинг: 0 / 0
21.02.2019, 12:13
    #39777185
SIMPLicity_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запрос внутри конструкции sum
Sergey SizovИли с некоторых пор:
Код: sql
1.
SELECT SUM(iif(b = '5', a, 0))


Спасибо, не знал...

Но всё-таки это тот же CASE : https://docs.microsoft.com/ru-ru/sql/t-sql/functions/logical-functions-iif-transact-sql?view=sql-server-2017
...
Рейтинг: 0 / 0
21.02.2019, 12:20
    #39777190
DaniilSeryi
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запрос внутри конструкции sum
SIMPLicity_Sergey SizovИли с некоторых пор:
Код: sql
1.
SELECT SUM(iif(b = '5', a, 0))


Спасибо, не знал...

Но всё-таки это тот же CASE : https://docs.microsoft.com/ru-ru/sql/t-sql/functions/logical-functions-iif-transact-sql?view=sql-server-2017

постепенно синтаксис и функции Access переносят в SQL Server. :-)
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Запрос внутри конструкции sum / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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