Cita:
Empezado por maeyanes
Pues la verdad nunca me he cruzado con algo como esto.
Y bueno, la forma en como gluglu puso su ejemplo inicial, hizo que yo expusiera mis argumentos anteriores.
Y aún así, acabo de hacer una prueba con una tabla de un sistema que estoy haciendo y dos consultas SQL:
Código SQL [-]select * from tabla where cast(:id as integer) is not null and id = :id and tipo = 0 select * tabla where id = :id and tipomov = 0
A ambas consultas les pasé como valor del parámetro un valor x y NULL y el resultado en ambas fue exactamente el mismo, o sea, que según esto, el hacer :id is not null (o :id is null) no afectó en el resultado.
Saludos...
|
Lo siento, no entiendo adonde quieres llegar (me da mucha pereza desentrelazar todo lo que habéis comentado en el hilo), el comportamiento de esas dos consultas que indicas parece el lógico.
¿ Aún tienes alguna duda concreta sobre como opera con los parámetros Firebird, cuando no puede discernir su tipo (y es necesario especificarlo en un CAST) y para qué es útil poner construcciones :PARAM IS NULL dentro del filtro de una consulta ?.