[firebase-br] Parâmetros nulos
"Fabrício F. Kammer"
ffkammer em conchalnet.com.br
Qua Jul 19 21:26:13 -03 2006
Gostei da solucao... pode ser interessante
obrigado
Fabiano Arndt escreveu:
> Precisei disso tbm, em Oracle é facinho, normalmente nossos select de
> relatórios e consultas tem esse formato no Oracle:
>
> SELECT
> [CAMPOS]
> FROM
> [TABLEAS]
> WHERE
> (:PARAM IS NULL
> OR
> CAMPO = :PARAM)
> AND
> (:PARAM2 IS NULL
> OR
> CAMPO = :PARAM2)
>
>
> no firebird tive que criar 2 parametros para cada opção, ficou mais ou
> menos assim
>
> SELECT
> [CAMPOS]
> FROM
> [TABLEAS]
> WHERE
> (:POR_PARAM = -1
> OR
> CAMPO = :PARAM)
> AND
> (:POR_PARAM_2 = -1
> OR
> CAMPO = :PARAM2)
>
> aí se o usuário deseja pelo primeiro parametro, passo 0 para POR_PARAM
> e o valor do parametro se ele deseja não filtrar pelo parametro, passo
> -1 para POR_PARAM
>
> espero que nao tenha ficado confusso
>
>
> flw,
> Fabiano.
>
>
> Em 18/07/06, "Fabrício F. Kammer"<ffkammer em conchalnet.com.br> escreveu:
>> Salve Galera!
>>
>> Alguém sabe alguma forma eficiente para testar se um parâmetro é nulo?
>> Tenho muitas consultas com parâmetros opcionais e preciso que o select
>> traga todos os registros caso o parâmetro não sejam informados.
>>
>> Em Oracle isso é o possível:
>>
>> WHERE CAMPO=:PARAM OR :PARAM IS NULL
>>
>> Já no FB não é possível esta solução. Testei o seguinte:
>>
>> WHERE CAMPO=:PARAM OR 0=:PARAM
>>
>> Porém dessa forma eu terei que passar um 0 (zero) na momento da execução
>> da consulta, caso isso seja esquecido a consulta não retornará nenhum
>> registro.
>>
>> []s
>>
>> --
>> Fabrício F. Kammer
>> Conchal/SP
>>
>> ______________________________________________
>> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>> Para editar sua configuração na lista, use o endereço http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
>> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para editar sua configuração na lista, use o endereço http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
--
Fabrício F. Kammer
19 3866-1927
ConchalNet
Conchal/SP
Mais detalhes sobre a lista de discussão lista