Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

จะตรวจสอบว่าข้อมูลเป็น NULL ใน MySQL ได้อย่างไร


คุณสามารถใช้ IF() เพื่อตรวจสอบว่าข้อมูลเป็น NULL หรือไม่ ให้เราสร้างตารางก่อน -

mysql> สร้างตาราง DemoTable (รหัส int ไม่ใช่ NULL AUTO_INCREMENT คีย์หลัก ชื่อ varchar(200) อายุ int); ตกลง ตกลง 0 แถวได้รับผลกระทบ (0.44 วินาที)

แทรกระเบียนในตารางโดยใช้คำสั่ง insert -

mysql> แทรกลงในค่า DemoTable(Name,Age)('John',23);Query OK, 1 แถวได้รับผลกระทบ (0.12 วินาที)mysql> แทรกลงในค่า DemoTable(Name,Age)('Sam',null);แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.12 วินาที)mysql> แทรกลงใน DemoTable (ชื่ออายุ) ค่า ('ไมค์', 23); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.20 วินาที) mysql> แทรกลงใน DemoTable (ชื่อ, อายุ) values('David',21);Query OK, 1 แถวได้รับผลกระทบ (0.21 วินาที)mysql> แทรกลงใน DemoTable(Name,Age) values('Carol',null);Query OK, 1 แถวได้รับผลกระทบ (0.13 วินาที) 

แสดงบันทึกจากตารางโดยใช้คำสั่ง select -

mysql> เลือก *จาก DemoTable;

สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -

<ก่อนหน้า>+----+---------+------+| รหัส | ชื่อ | อายุ |+----+-------+------+| 1 | จอห์น | 23 || 2 | แซม | NULL || 3 | ไมค์ | 23 || 4 | เดวิด | 21 || 5 | แครอล | NULL |+----+-------+------+5 แถวในชุด (0.00 วินาที)

นี่คือแบบสอบถามเพื่อตรวจสอบว่าข้อมูลเป็น NULL หรือไม่ สิ่งนี้จะเพิ่มข้อความทุกที่ที่มองเห็น NULL ในบันทึก -

mysql> เลือกถ้า (อายุเป็น NULL,'ไม่มีอายุ', อายุ) จาก DemoTable;

สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -

<ก่อนหน้า>+--------------------------------------+| if(อายุเป็นโมฆะ,'ไม่มีอายุ',อายุ) |+----------------------------------- ----+| 23 || ไม่มีอายุ || 23 || 21 || ไม่มีอายุ |+--------------------------------------+5 แถวในชุด (0.00 วินาที)