sql >> Base de Datos >  >> RDS >> Mysql

MySQL, ¿es mejor insertar NULL o una cadena vacía?

Usando NULL puede distinguir entre "no poner datos" y "poner datos vacíos".

Algunas diferencias más:

  • UN LENGTH de NULL es NULL , un LENGTH de una cadena vacía es 0 .

  • NULL s se ordenan antes que las cadenas vacías.

  • COUNT(message) contará cadenas vacías pero no NULL s

  • Puede buscar una cadena vacía usando una variable enlazada pero no un NULL . Esta consulta:

    SELECT  *
    FROM    mytable 
    WHERE   mytext = ?
    

    nunca coincidirá con un NULL en mytext , cualquiera que sea el valor que pase del cliente. Para hacer coincidir NULL s, tendrá que usar otra consulta:

    SELECT  *
    FROM    mytable 
    WHERE   mytext IS NULL