Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

sql

Alguém pode me ajudar a entender esse CASE, por favor

SELECT A.ID_SENHA,

       CASE WHEN A.DS_GRUPO = 'Grupo 2'

                THEN fn_dias_internado_senha (A.ID_SENHA)

                ELSE 0 END QT_DIAS_INTERNADO

FROM TB_FATO_AUTORIZACAO A

WHERE A.DT_REFERENCIA >=  to_date('01/01/2015', 'dd/mm/yyyy')

   AND A.DT_REFERENCIA <=  LAST_DAY( to_date('01/02/2015', 'dd/mm/yyyy') ) ;

1 Solution

Accepted Solutions
thiago_mlg
Creator II
Creator II

Valber, basicamente o CASE está executando uma condicional.

SELECIONE A.ID_SENHA,

       CASO CAMPO A.DS_GRUPO = 'Grupo 2'

                ENTAO O CAMPO fn_dias_internado_senha  FICARÁ COM O VALOR DO CAMPO (A.ID_SENHA)

                SE NAO FICARÁ COM 0 END  -- AQUI É O NOME DO CAMPO. QT_DIAS_INTERNADO

View solution in original post

6 Replies
thiago_mlg
Creator II
Creator II

Valber, basicamente o CASE está executando uma condicional.

SELECIONE A.ID_SENHA,

       CASO CAMPO A.DS_GRUPO = 'Grupo 2'

                ENTAO O CAMPO fn_dias_internado_senha  FICARÁ COM O VALOR DO CAMPO (A.ID_SENHA)

                SE NAO FICARÁ COM 0 END  -- AQUI É O NOME DO CAMPO. QT_DIAS_INTERNADO

nicolett_yuri

Se o campo A.DS_GRUPO for igual a  'Grupo 2'

então usa a função fn_dias_internado_senha na coluna A.ID_SENHA

senão é 0

chama o campo de QT_DIAS_INTERNADO

nicolett_yuri

Estou achando que esse Fn é alguma função ou estou viajando? rsrs

thiago_mlg
Creator II
Creator II

É vdd.. muito provável pois o campo está entre parenteses.. não tinha me atentado a isso.. rsrs

Not applicable
Author

MUITO OBRIGADO GALERA

thiago_mlg
Creator II
Creator II

Valber, caso vc tenha mais alguma dúvida, estamos a disposição.

Caso não, marque a resposta como correta para fechar o tópico.

Abraços