在 MySQL 中,NULL 还是空字符串更好?
mysqldatabasemysqli
选择取决于数据库。在 ORACLE 数据库中,空字符串将转换为 NULL。
在 MySQL 中,使用空字符串比使用 NULL 更好。使用一些边界条件很容易检查空字符串,而使用 NULL 则无法做到这一点。要找到 NULL,我们需要添加一个额外的条件,即"IS NULL"
我们可以检查 NULL 的长度是否为 0,而空字符串的长度是否为 1。
检查 NULL 的长度。
mysql>SELECT count(NULL);
以下是上述查询的输出。
+-----------------+ | count(NULL) | +-----------------+ | 0 | +-----------------+ 1 row in set (0.05 sec)
因此,MySQL 中 NULL 的长度为 0。
检查空字符串的长度。
mysql>SELECT count('');
以下是输出。
+-----------+ | count('') | +-----------+ | 1 | +-----------+ 1 row in set (0.00 sec)
显示空字符串的长度为 1。