1,警告: 聚合或其他 SET 操作消除了空值。
原因:
当执行聚合函数时,操作了NULL值。
例如:
表中的数据为
num:10,23,null,23
当执行select sum(num) from table时就会出现这个警告提示。
一般情况下,这种警告不会影响结果。
解决:
(1)更改数据库的值,update num = 0 where num = null
(2)SET ANSI_WARNINGS OFF
当设置为 ON 时,如果聚合函数(如 SUM、AVG、MAX、MIN、STDEV、STDEVP、VAR、VARP 或 COUNT)中出现空值,将生成警告信息。当设置为 OFF 时,不发出警告。
当设置为 ON 时,被零除错误和算术溢出错误将导致回滚语句并生成错误信息。当设置为 OFF 时,被零除错误和算术溢出错误将导致返回空值。如果在 character、Unicode 或 binary 列上尝试执行 INSERT 或 UPDATE 操作,而这些列中的新值长度超出最大列大小,则被零除错误和算术溢出错误将导致返回空值。如果 SET ANSI_WARNINGS 为 ON,则按 SQL-92 标准的指定将取消 INSERT 或 UPDATE。将忽略字符列的尾随空格,忽略二进制列的尾随零。当设置为 OFF 时,数据将剪裁为列的大小,并且语句执行成功