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

Откуда:
Сообщений: 116
Есть запрос
select   case 
	  when a1.APPROVED_PLAN -a2.APPROVED_PLAN=0  then	1
	  else 0  end  as test_result
  from 
     (SEL  SUM(APPROVE_PLAN)   APPROVED_PLAN, FRMT_ID
      FROM DEV_DB_HYP.V_SALES_PLAN_WA
      WHERE MONTH_ID  between 201810 and 201212
	GROUP BY FRMT_ID 
      ) A1 inner join
    (SEL SUM(APPROVE_PLAN) APPROVED_PLAN , FRMT_ID
    FROM DEV_DB_ODI.T_SALES_PLAN_WA_DAY_TMP PLAN
    INNER JOIN DEV_DB_HYP.V_DAYS D ON D.DAY_ID = PLAN.DAY_ID
    WHERE PLAN.MONTH_ID  between 201810 and 201812
    and APPROVE_PLAN is not null
	group by FRMT_ID)A2 on A1.FRMT_ID=A2.FRMT_ID


который может давать разные результаты напр.
1
0
1
или
1
1
1
Как дописать запрос чтобы выводилось значение или 1 или 0, если в выборки есть хоть одно значение -0 то 0 иначе если все 1 то 1
1 окт 18, 14:04    [21691202]     Ответить | Цитировать Сообщить модератору
 Re: case условие. как сделать выбор одного значения из набора результатов  [new]
invm
Member

Откуда: Москва
Сообщений: 9123
select   case 
	  when a1.APPROVED_PLAN -a2.APPROVED_PLAN=0  then	1
	  else 0  end  as test_result,
 min(case when a1.APPROVED_PLAN -a2.APPROVED_PLAN=0 then 0 else 1 end) over ()
1 окт 18, 14:12    [21691239]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить