【发布时间】:2020-01-14 17:05:57
【问题描述】:
我有一个没有记录的 MySQL 表。
-- all of these return false
SELECT IF(MAX(id), 'true', 'false') FROM `vcr_grades`
SELECT IF(MAX(id) = NULL, 'true', 'false') FROM `vcr_grades`
SELECT IF(!MAX(id), 'true', 'false') FROM `vcr_grades`
-- returns NULL
SELECT MAX(id) FROM `vcr_grades`
AUTO_INCREMENT 设置为除1 之外的另一个值。主键是id。
我错过了什么?
【问题讨论】:
-
是的,我以前做过。为什么
SELECT IF(MAX(id) = NULL, 'true', 'false') FROM 'vcr_grades'我没有记录却返回false? -
AUTO_INCREMENT总是增加,所以你不会与ids 发生冲突。如果您删除然后重用以前的id,您可能与其他表的映射不正确。不确定这是否能回答您的问题。你在这里问什么? -
对 null 的测试是 IS NULL not = null。
标签: mysql sql database group-by sql-null