mysql - 如何使用mysql "IFNULL"

标签 mysql

据我所知IFNULL()功能是

IFNULL(exp1,exp2),当exp1=null时输出exp2

但我尝试了这样的条件

select  IFNULL (ams2.deptno.`FName`,'empty')
  from ams2.deptno as dept

但结果还是null不为空

我不知道哪里有问题,

谁能教我怎么修?

最佳答案

1.你使用的查询是正确的需要调试你能不能提供一些其他信息比如你的表的 crate 表语句,一些示例数据

mysql> select ifnull(FName,'empty') as FName from deptno;
+---------------------------------------------------------------------   ---------------------------+
| FName                                                                                              |
+---------------------------------------------------------------------  ---------------------------+
| myname                                                                                           |
| myname                                                                                         |
| myname                                                                                         |
| myname                                                                                         |
| myname                                                                                         |
| myname                                                                                         |
| myname                                                                                         |
| myname                                                                                         |
| myname                                                                                         |
| myname                                                                                         |
| empty                                                                                          |
| empty                                                                                          |
| empty                                                                                          |
| empty                                                                                          |
| empty                                                                                          |
| empty                                                                                            |
| iam                                                                                            |
| ifdsam                                                                                         |
| rwer                                                                                           

还有许多其他可能的解决方案可以解决您的问题

1.使用下面的查询

select COALESCE(ams2.deptno.`FName`,'empty') as dept 
from ams2.deptno

2.如果值为空,您可以为该列指定一个默认值

alter table ams2.deptno 
modify cloumn FName varchar(255) 
               not null default 'empty'

关于mysql - 如何使用mysql "IFNULL",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36854916/

相关文章:

mySQL检索按顺序重复一个值的记录

mysql - 为什么使用 CASE 表达式不适用于 GROUP BY 和 HAVING 子句?

php - 根据特定列中存在的值对表进行排序

mysql - 如何将 URL 片段存储在数据库中?

mysql - 将facebook数据存储到mysql

php - Xcode 8.3从php和json获取数据

mysql - 删除 - 我不能指定目标表?

php - 如何在AJAX中显示MYSQL错误?

mysql - 获取MySQL中引用的表

mysql - 从时间线到时间戳表的 SQL 连接类别