Oi Fábio,
vc não vai precisar fazer if´s pra checar que operador vc vai usar.
você vai montar um sql com seu operador para ser executado
esse seria um trecho do código de uma funcao que vc passaria os numeros e o
codigo do operador
function executa(numero1 integer, numero2 integer, cod_operador integer)
reuturns integer as
$$
declare
vsql varchar;
voperador varchar;
resultado integer;
begin
select operador from tabela where id = cod_operdor into voperador;
vsql := "select " || numero1 || voperador || numero2;
execute vsql into resultado;
return resultado
end;
$$
language plpgsql ;
On Thu, 29 Jan 2009 10:19:37 -0300, Fabio Henrique <[email protected]> wrote:
> bom dia,
>
> eu pensei nessa solucao, mas teria q ficar fazendo comparacoes para
> poder executar o operador que eu quero, digo, se eu quero utilizar o
> sinal de '-' ou '+' ou '/' eu tenho q fazer as verificacoes para depois
> montar a formula sendo q se armazesse o operador, faria isso direto.
>
> Mas mesmo assim, valeu... se tiver mais alguma ideia... ;)
>
> grato
>
> Fabio Henrique
>
>
>
>
> Luiz Magno Diogo escreveu:
>> Olá Fabio,
>>
>> talvês seja mais simples criar uma função em plpgsql e vc passar
> o operador como parametro, ou o código da tabela,
>> aí vc pode montar um sql dinamico para ser executado já com seu
> operador.
>>
>>
>> ...
>> select operador from tabela where id = 40 into voperador;
>> vsql := "select " || numero1 || voperador || || numero2;
>>
>> algo assim acho que resolve.
>> qualquer coisa tamo aí.
>>
>>
>> Luiz Magno Diogo
>> Mondrian Tecnologia
>>
>>
>> On Thu, 29 Jan 2009 09:24:13 -0300, Fabio Henrique
> <[email protected]> wrote:
>>
>>> Bom dia,
>>>
>>> Alguem sabe se é possivel criar um campo em uma tabela do tipo
> operador?
>>> Por exemplo armazenar o '+' e utliza-lo para fazer uma conta.
>>> Por exemplo a formula:
>>>
>>> select 1 (select campo_operador from tabela where codigo = 40) 4;
>>>
>>> onde o subselect retornaria um operador de soma (+).
>>>
>>> é possivel fazer isso ou algo parecido?
>>>
>>> Grato.
>>>
>>> Fabio Henrique
>>>
>>>
>>>
>>> __________________________________________________
>>> Faça ligações para outros computadores com o novo Yahoo! Messenger
>>> http://br.beta.messenger.yahoo.com/
>>> _______________________________________________
>>> pgbr-geral mailing list
>>> [email protected]
>>> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
>>>
>>
>> _______________________________________________
>> pgbr-geral mailing list
>> [email protected]
>> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
>>
>>
>
> __________________________________________________
> Faça ligações para outros computadores com o novo Yahoo! Messenger
> http://br.beta.messenger.yahoo.com/
> _______________________________________________
> pgbr-geral mailing list
> [email protected]
> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral