MySQL: Comprobar si un Valor es NULL
Pregunta de Compi | 01/05/2021 a las 12:43
Me gustaría comprobar si un campo o el contenido de un campo de una columna es NULL con la ayuda de MySQL.
Para ello, he construido la siguiente consulta:
SELECT id, IFNULL(col, 0, col) FROM tab
Esta consulta debe leer el valor de la columna "col" en el caso de que "col" no sea NULL o 0 si es NULL.
Desafortunadamente, la consulta no funciona de esta manera. Siempre recibo el siguiente mensaje de error:
#1582 - Incorrect parameter count in the call to native function 'IFNULL'
¿Alguien puede decirme cómo reescribir esta consulta de base de datos para que funcione correctamente? Hasta donde yo sé, el IF normal espera 3 parámetros, entonces, ¿qué estoy haciendo mal aquí?
Temas Relacionados
MySQL: SELECT 0 en lugar de NULL
Pregunta | 4 Respuestas
Convertir los Valores de Color RGB, CMYK, CMY, HSV, TColor y XYZ
Tutorial | 0 Comentarios
MySQL: Cómo usar IFNULL- Error: Número Incorrecto de Parámetros
Pregunta | 1 Respuesta
MySQL: Cómo verificar si un campo es NULL o vacío
Pregunta | 3 Respuestas
MySQL: Agregar una nueva Columna a una Tabla
Tutorial | 0 Comentarios
MySQL/PHP: Cómo recuperar el último INSERT ID
Información | 0 Comentarios
MySQL: Agregar o Insertar un Número Aleatorio
Consejo | 0 Comentarios
Aviso Importante
Por favor tenga en cuenta: Las contribuciones publicadas en askingbox.com son contribuciones de los usuarios y no deben reemplazar el asesoramiento profesional. No son verificados por independientes y no reflejan necesariamente la opinión de askingbox.com. Aprende más.
Participar
Haga su propia pregunta o escriba su propio artículo en askingbox.com. He aquí cómo.
Hay dos posibilidades que puede utilizar para cambiar su consulta.
Puede escribir
o puede cambiar su consulta a:
La primera consulta usa el IF normal de MySQL. Como primer parámetro, especifica "col IS NULL", con el que verifica si "col" es NULL. En consecuencia, como segundo y tercer parámetro, puede especificar qué se debe devolver según la condición. Es decir 0 si la condición es VERDADERA ("col" es NULL) o el contenido de "col" en el caso de que la condición sea FALSE ("col" no es NULL).
El segundo ejemplo muestra cómo utilizar IFNULL correctamente. IFNULL espera dos parámetros: Primero, el valor a verificar (en su caso, el contenido de "col") y como segundo parámetro, el valor que debe devolverse si el primer parámetro es NULL. De lo contrario, se devuelve el primer parámetro.
Por supuesto, la primera forma siempre tiene una ventaja cuando no desea simplemente leer el contenido de la columna correspondiente, por ejemplo, si desea devolver algún contenido alternativo o si desea modificar el contenido original de la columna.
01/05/2021 a las 18:33