Tengo una capa de forma con un atributo que contiene NULL
valores a los que me gustaría aplicar un filtro para valores diferentes de NULL
.
Usando la interfaz gráfica de usuario disponible para tal construcción de consultas, uno intentaría intuitivamente
"obj_art" != NULL
Lo que significa 'dame todas las características con el atributo "obj_art" diferente de NULL
' (estas cuentan definitivamente más de 0). Probar esta consulta ofrece un resultado extraño desde mi punto de vista:
Entonces, lo que he aprendido hasta ahora es que puedo lograr esto usando
"obj_art" IS NOT NULL
La pregunta es, ¿cuál es la diferencia entre != NULL
y IS NOT NULL
?
!=
no significa "no es"; significa "no es igual a". IS NOT
significa "no lo es", así que creo que esto es perfectamente intuitivo :)
NULL
no es un valor yo diría que es intuitiva para tratar de usar =
o !=
como que es el modo de evaluar cualquier otro valor. No es hasta que sepa que NULL
no es un valor que es realmente intuitivo de usar en IS NOT
lugar de !=
. Muchos no son conscientes de lo que NULL
realmente es.
NULL
está en la lista de valores (cp. Arriba), y por lo tanto se trata como un valor 'normal'. ¿Y no hay botón IS NULL
, o me perdí tal? Entonces, al escribir tal consulta y con el conocimiento, eso NULL
debe tratarse de una manera especial que podríamos discutir sobre la intuición, pero por supuesto no en el contexto de ESTA GUI.