Valeu meu caro, uma abraço ----- Original Message ----- From: Anderson To: oracle_br@yahoogrupos.com.br Sent: Wednesday, July 19, 2006 3:15 PM Subject: [oracle_br] Re: Dúvida no código
Na verdade o DECODE completo do seu código é esse: decode(BL.id_codigo_encerramento, 1, decode(BL.id_codigo_informacao, 1, decode(BL.id_codigo_cancelamento, 1,BL.id_codigo_motivo,BL.id_codigo_cancelamento), BL.id_codigo_informacao), BL.id_codigo_encerramento) Seguinte: 1 - Se houver id_codigo_encerramento então é informado o id_codigo_encerramento. 2 - Se não houver id_codigo_encerramento mas houver id_codigo_informacao então é informado o id_codigo_informacao. 3 - E se não houver id_codigo_encerramento nem id_codigo_informacao mas houver id_codigo_cancelamento então é informado o id_codigo_cancelamento. --- Em oracle_br@yahoogrupos.com.br, "Cristian" <[EMAIL PROTECTED]> escreveu > > Pessoal alguém poderia me dizer que esta fazendo esta linha, estou analisando um código PL/SQL mas não estou conseguindo entender estas linhas. > > decode(BL.id_codigo_encerramento, 1, > decode(BL.id_codigo_informacao, 1, > decode(BL.id_codigo_cancelamento, 1, > > O código completo é este, se trata de uma função que recebe um ID > > CREATE OR REPLACE FUNCTION INFORMESMARCO.obter_codigo_baixa ( ID_BOLET varchar2) > return varchar2 is > cod_baixa varchar2(5); > begin > select C.cod_codigo_baixa into cod_baixa FROM > (select /*+ PARALLEL (BL 2) */ > BL.ID, > decode(BL.id_codigo_encerramento, 1, > decode(BL.id_codigo_informacao, 1, > decode(BL.id_codigo_cancelamento, 1, > BL.id_codigo_motivo, > BL.id_codigo_cancelamento), > BL.id_codigo_informacao), > BL.id_codigo_encerramento) id_codigo_baixa > FROM sir.boletim BL > where BL.ID = ID_BOLET) V, sir.codigos_baixa C > WHERE V.id_codigo_baixa = C.id_codigo_baixa; > return cod_baixa; > end obter_codigo_baixa; > / > > Abraço > > Cristian > > [As partes desta mensagem que não continham texto foram removidas] > [As partes desta mensagem que não continham texto foram removidas] -------------------------------------------------------------------------------------------------------------------------- Atenção! As mensagens deste grupo são de acesso público e de inteira responsabilidade de seus remetentes. Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ --------------------------------------------------------------------------------------------------------------------------__________________________________________________________________ Este Grupo recebe o apoio da SQL Magazine - www.devmedia.com.br/sqlmagazine __________________________________________________________________ O grupo Oracle_br não aceita anexos. Quando oferecer algum arquivo, tenha o link do mesmo para evitar trafego(pedidos) desnecessário. Links do Yahoo! Grupos <*> Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/oracle_br/ <*> Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] <*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html