started start query lost log getting files error during create code mysql null where-clause

start - mysql workbench log



Valor NULL de mysql en donde en CLAUSA (3)

La siguiente declaración debería ayudar:

SELECT * FROM mytable WHERE COALESCE(field,0) IN (1,2,3,0)

cómo lidiar con el valor NULL en mysql donde en CLAUSA

intento como

SELECT * FROM mytable WHERE field IN(1,2,3,NULL)

No esta funcionando

solo funciona como:

SELECT * FROM mytable WHERE field IN(1,2,3) OR field IS NULL

¿Cómo puedo hacer que funcione en WHERE IN ? es posible ?


Según tengo entendido, quiere extraer cada registro con 1,2,3 y valor nulo.

No creo que sea posible poner nulo en el operador IN. Espera valores y null está bien ... no es un valor. Entonces, realmente debes poner el OR con el nulo para obtener el resultado deseado.


Tal vez esta información del Manual de referencia de MySQL ayude:

Para cumplir con el estándar SQL, IN devuelve NULL no solo si la expresión en el lado izquierdo es NULL, sino también si no se encuentra ninguna coincidencia en la lista y una de las expresiones en la lista es NULL .