2010/1/4 GABRIEL DOS SANTOS <[email protected]>: > Boa noite turma, > > Objetivo: Estou desenvolvendo uma função que retorna os dados do Locatario > de contrato de locação, so que > o locatario pode ser um Cliente, um Funcionario ou um Solicitante(que como > se fosse um parceiro da empresa). Nesta função > eu passo o Tipo de locatario e o codigo do mesmo, e de acordo com o tipo do > mesmo, é para a função dar um SELECT na > tabela correspondente e retornar os dados do locatario. > > Erro: Não esta aceitando retornar mais de coluna nos sub-selects de cada > WHEN... > Por isto que eu estou querendo utilizar uma estrutura de IF...THEN...END > IF...dentro de uma função SQL. > Alguem sabe como escrevo a sintaxe correta. Um colega da comunidade me > indicou para utilizar o CASE... > mais esta dando certo.. > > O corpo da função esta logo abaixo. >
Esta não é a maneira correta de utilizar uma Expressão Condicional. Considere a opção mais adequada que é utilizar PL/pgSQL [1]. Observe que em [2] é dada a dica: "Tip: If your needs go beyond the capabilities of these conditional expressions, you might want to consider writing a stored procedure in a more expressive programming language." Osvaldo [1] http://www.postgresql.org/docs/current/interactive/functions-conditional.html [2] http://www.postgresql.org/docs/current/interactive/plpgsql.html _______________________________________________ pgbr-geral mailing list [email protected] https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
