Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

theteo

sql com IF

Recommended Posts

Galera, no meu banco tem uma view definida assim:

select `t`.`id_tramitacao` AS `id_tram`,`p`.`id_protocolo` AS `id_prot`,`p`.`protocolo` AS `num_prot`,`p`.`id_contrib` AS `id_contrib`,`c`.`fnome` AS `nome`,`c`.`lnome` AS `sobrenome`,`p`.`assunto` AS `assunto`,`t`.`id_setor_origem` AS `id_setor_rem`,`s1`.`sigla` AS `sigla_rem`,
`serv1`.`fnome` AS `serv_rem`,
`t`.`id_setor_destino` AS `id_setor_dest`,`s2`.`sigla` AS `sigla_dest`,
`serv2`.`fnome` AS `serv_dest`,
`t`.`data_tramitacao` AS `data` from (((((`radoc`.`tbl_prot_tramitacoes` `t` left join `radoc`.`tbl_setores` `s2` on((`t`.`id_setor_destino` = `s2`.`id_setor`))) left join `radoc`.`tbl_servidores` `serv2` on((`t`.`id_serv_recebe` = `serv2`.`id_servidor`))) join (`radoc`.`tbl_protocolos` `p` left join `radoc`.`tbl_contribuintes` `c` on((`p`.`id_contrib` = `c`.`id_contrib`)))) join `radoc`.`tbl_servidores` `serv1`) join `radoc`.`tbl_setores` `s1`) where ((`t`.`id_protocolo` = `p`.`id_protocolo`) and (`t`.`id_serv` = `serv1`.`id_servidor`) and (`t`.`id_setor_origem` = `s1`.`id_setor`))

O meu problema está em serv_rem e serv_dest

 

Gostaria de implementar nessa VIEW algo como:

 

If id_setor_rem = 50

 

serv_rem e serv_dest serão puxados da tbl_x

 

else

 

serv_rem e serv_dest serão puxados da tbl_s

 

Mesma coisa com id_setor_destino.

 

é possível ? alguém poderia apresentar um exemplo ?

 

Muito obrigado.

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Uma solução pode ser union , algo como

SELECT CAMPO1,CAMPO2,...CAMPON
FROM TABELA1
WHERE <CONDICAO A>
UNION ALL
SELECT CAMPO1,CAMPO2,...CAMPON
FROM TABELA1
WHERE <CONDICAO B>

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.