MySQL IFNULL() 控制流运算符的默认返回类型是什么?


实际上,IFNULL(expression1, expression2) 的默认返回类型是这两个表达式的更通用的类型,按 STRING、REAL 或 INTEGER 排序。可以从以下示例中理解:-

示例

mysql> Create table testing Select IFNULL(100,'testing123');
Query OK, 1 row affected (0.18 sec)
Records: 1 Duplicates: 0 Warnings: 0

mysql> Select * from testing568;
+-----------------------+
| IFNULL(100,'testing') |
+-----------------------+
| 100                   |
+-----------------------+
1 row in set (0.00 sec)

mysql> Describe testing568;
+-----------------------+------------+------+-----+---------+-------+
| Field                 | Type       | Null | Key | Default | Extra |
+-----------------------+------------+------+-----+---------+-------+
| IFNULL(100,'testing') | varchar(7) | NO   |     |         |       |
+-----------------------+------------+------+-----+---------+-------+
1 row in set (0.03 sec)

从上面的结果集中可以清楚地看出,在这种情况下,列的类型为 varchar(7)。换句话说,它属于字符串类型。

更新于: 2020-6-22

86 次浏览

开启您的职业生涯

完成课程即可获得认证

开始学习
广告
© . All rights reserved.