你先写个select not null执行一下不就知道了
not null作为逻辑表达式,你要去判断a is not null才有意义,你直接查询它,结果就是null
不是你那样子理解的
IFNULL 是 MySQL 中用来处理 NULL 值的函数,它的语法如下:
SELECT IFNULL(column_name, value) FROM table_name;
其中,column_name 是要检查是否为 NULL 的列名,value 是当 column_name 的值为 NULL 时返回的值。如果 column_name 不为 NULL,则返回 column_name 的值。
参考我下面的用法,你就明白了:
假设一开始我aa表的name字段值为null
执行IFNULL语句,由于name 为null,所以显示你设置的值
当 name 有值,再次执行,就不显示你设置的值了
希望能帮助到你,如有用,请采纳,谢谢
附其他用法:
例如,假设我们有一个表格 users,其中包含一列 age,有些行中 age 的值为 NULL。我们可以使用 IFNULL 函数来将这些 NULL 值替换为默认值:
SELECT name, IFNULL(age, 0) AS age FROM users;
如果 age 列的值为 NULL,则使用 0 作为默认值。最终的查询结果中,返回了所有用户的姓名和年龄,其中年龄列的 NULL 值被替换为 0。
IFNULL() 函数用于判断第一个表达式是否为 NULL,如果为 NULL 则返回第二个参数的值,如果不为 NULL 则返回第一个参数的值。
IFNULL() 函数语法格式为:
```sql
IFNULL(expression, alt_value)
如果第一个参数的表达式 expression 为 NULL,则返回第二个参数的备用值。
第一个参数为 NULL:
SELECT IFNULL(NULL, "RUNOOB");
输出 RUNOOB
第一个参数不为 NULL:
```sql
SELECT IFNULL("Hello", "RUNOOB");
输出 Hello