จริงๆ แล้ว ชนิดข้อมูลคืนค่าเริ่มต้นของ IFNULL(expression1, expression2) เป็นแบบทั่วไปกว่าของสอง Expression ตามลำดับ 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) กล่าวอีกนัยหนึ่ง เป็นชนิด String