Bom dia a todos,
estou no trabalho e tive que fazer um script para a carga de dados no oracle, porém me deparei com a seguinte situação, possuia uma coluna que dependia do select fazendo uma soma de outras 4 colunas sendo que eu só poderia usar uma certa coluna caso ela não tivesse valor = 98, o que me facilitou é que dei um select no outro banco de onde estava pegando as colunas e jogando pro meu e reparei que apenas duas possuiam valor 98 então fiz da seguinte forma:
CASE WHEN col1=88 AND col3=88 THEN (col2 + col4)
WHEN col1=88 THEN (col2 + col3 + col4)
WHEN col3=88 THEN (col1 + col2 + col4)
ELSE (col1 + col2 + col3 + col4)
END
Funcionou tranquilo, o problema é que existem outras colunas que precisarei fazer a carga mas que todas possuem valor 88 e o case ficará enorme.
Tem uma maneira mais inteligente de ser feito esse código de forma a ser menos trabalhoso?
Desde já obrigado.