คุณสามารถพิมพ์ค่า NULL เป็น 0 โดยใช้ฟังก์ชัน IFNULL() ไวยากรณ์มีดังนี้ −
เลือก ifnull(yourColumnName) เป็น anyVariableName จาก yourTableName;
เพื่อให้เข้าใจแนวคิดข้างต้น ให้เราสร้างตารางก่อน -
mysql> สร้างตาราง TypecastDemo −> ( −> AccountNumber int −> ); ตกลง ตกลง 0 แถวได้รับผลกระทบ (0.84 วินาที)
ให้เราแทรกบางระเบียนที่มีค่า NULL แบบสอบถามเพื่อแทรกระเบียนมีดังนี้ -
mysql> แทรกลงในค่า TypecastDemo (NULL) แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.13 วินาที) mysql> แทรกลงในค่า TypecastDemo (1234); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.14 วินาที) mysql> แทรกลงในค่า TypecastDemo ( 9876); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.14 วินาที) mysql> แทรกลงในค่า TypecastDemo (6666); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.16 วินาที) mysql> แทรกลงในค่า TypecastDemo (NULL); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ ( 0.27 วินาที) mysql> แทรกลงในค่า TypecastDemo (NULL) แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.36 วินาที) mysql> แทรกลงในค่า TypecastDemo (3214); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.34 วินาที)
ตอนนี้คุณสามารถแสดงระเบียนทั้งหมดโดยใช้คำสั่ง select แบบสอบถามมีดังนี้ −
mysql> เลือก *จาก TypecastDemo;
ต่อไปนี้เป็นผลลัพธ์ -
<ก่อนหน้า>+--------------+| เลขที่บัญชี |+--------------+| NULL || 1234 || 9876 || 6666 || NULL || NULL || 3214 | +---------------+7 แถวในชุด (0.00 วินาที)ใช้ไวยากรณ์ที่เราเห็นด้านบนเพื่อพิมพ์ค่า NULL เป็น 0 แบบสอบถามมีดังนี้ -
mysql> เลือก ifnull(AccountNumber,0) เป็น TypeCastNullToZero จาก TypecastDemo;
ต่อไปนี้เป็นผลลัพธ์ -
<ก่อนหน้า>+--------------------+| TypeCastNullToZero |+--------------------+| 0 || 1234 || 9876 || 6666 || 0 || 0 || 3214 |+--------------------+7 แถวในชุด (0.00 วินาที)สมมติว่าคุณต้องการมากกว่าหนึ่งคอลัมน์ จากนั้นคุณสามารถใช้ COALESCE ได้