powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Помогите с case условием
4 сообщений из 4, страница 1 из 1
Помогите с case условием
    #40118094
Romanov-krd
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть выборка:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
SELECT	YM, ParentID, GMV,
		case when GMV=0 and  then 1 end Churn 
FROM 
	(
	select	YM, ParentID, sum(GMV) GMV
	from	(
			select  YM, ParentID, GMV
			from DP_GMV_Forecast.test
			where ParentID=35535000 and GMV=0
			) t1
	group by YM, ParentID
	) t2



результат на скрине.
Как изменить case условие чтобы если за 3 предыдущих месяца в gmv стоит 0 то стояло 1 в поле Churn а иначе 0
...
Рейтинг: 0 / 0
Помогите с case условием
    #40118103
Фотография komrad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Romanov-krd,

если в GMV нет отрицательных значений, то можно так
Код: sql
1.
iif(lag(gmv,1) over (order by ym)+lag(gmv,2) over (order by ym)+lag(gmv,3) over (order by ym)=0,1,0)

...
Рейтинг: 0 / 0
Помогите с case условием
    #40118132
Romanov-krd
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
komrad,

а case условиями как-нибудь можно сделать?
...
Рейтинг: 0 / 0
Помогите с case условием
    #40118135
Фотография komrad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Romanov-krd
komrad,

а case условиями как-нибудь можно сделать?

Короткий ответ: можно

Подробнееiif это тот же case
почитайте справку и сами сможете переписать на case
https://docs.microsoft.com/en-us/sql/t-sql/functions/logical-functions-iif-transact-sql
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Помогите с case условием
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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