Member 12770648 Ответов: 0

Как я могу переключить, если...еще..конец на <предварительно&ГТ;буквальное выражение&ЛТ;/пре>, Чтобы связать в &ЛТ;б&ГТ;КТР&ЛТ;/б&ГТ;


Нужно изменить и включить недокормленных ЕСЛИ...ИНАЧЕ...Конец буквальное выражение в CTE - общее табличное выражение.

IF @CINCIDENT <>'ALL'
            BEGIN
              IF @CINCIDENT = 'OPENED'
                  SET @sql = @sql + ' AND A.COMP_DATE+P.PROD_SERV_TAT >= GETDATE()'
              ELSE IF @CINCIDENT = 'CLOSED'
                  SET @sql = @sql + ' AND A.COMP_DATE+P.PROD_SERV_TAT <  GETDATE()
                                      AND A.RESOLUTION_STAT_FRONT NOT IN ("BAD","UNHAPPY","UNSATISFACTORY")'
              ELSE IF @CINCIDENT = 'UNRESOLVED'
                  SET @sql = @sql + ' AND A.COMP_DATE+P.PROD_SERV_TAT <  GETDATE()
                                    AND A.RESOLUTION_STAT_FRONT     IN ("BAD","UNHAPPY","UNSATISFACTORY")'
             END




CTE -общее табличное выражение

;with cte as
(	
		SELECT a.Brn_name AS BRNNAME,A.PTICK_CODE AS TICKET,
		       A.LNAME    AS LNAME   ,A.FNAME      AS FNAME ,
		       A.EMPNO    AS EMPNO  ,A.COMP_TYPE  AS COMP_TYPE,     
		                                b.Attribs AS ATTRIB1  , c.Attribs AS ATTRIB2,
                                        d.Attribs AS ATTRIB3  , e.Attribs AS ATTRIB4
			FROM Response A
			JOIN @REQUEST B ON a.RESPONSE1 = B.Response
			JOIN @REQUEST C ON a.RESPONSE2 = C.Response
			JOIN @REQUEST D ON a.RESPONSE3 = D.Response
			JOIN @REQUEST E ON a.RESPONSE4 = E.Response
	    WHERE A.COMP_DATE BETWEEN @CFROM AND @CTO

         .................(CASE THEN END) STATEMENT..........

)



Как мне переключиться с конца IF..ELSE..
literal expression
чтобы привязать к себе КТОС выражение для завершения оператора


Спасибо

Что я уже пробовал:

На пути развития системы стоит сложная задача.

Проверил интернет безрезультатно

Jörgen Andersson

Используйте оператор case. https://www.techonthenet.com/sql_server/functions/case.php

0 Ответов