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

การทำงานกับ NULL และไม่ใช่ NULL ใน MySQL


สำหรับ NULL มีสองคุณสมบัติใน MySQL −

  • เป็นโมฆะ
  • ไม่เป็นค่าว่าง

เพื่อให้เข้าใจแนวคิดข้างต้น ให้เราสร้างตาราง แบบสอบถามเพื่อสร้างตารางมีดังนี้ −

mysql> สร้างตาราง NULL_Demo -> ( -> UserId int, -> UserName varchar(20), -> UserAddress varchar(20) -> );Query OK, 0 แถวได้รับผลกระทบ (0.67 วินาที)

ตัวอย่าง

แทรกบางระเบียนในตารางโดยใช้คำสั่งแทรก แบบสอบถามมีดังนี้ −

mysql> แทรกลงในค่า NULL_Demo (12345,'John', NULL);Query OK, 1 แถวได้รับผลกระทบ (0.16 วินาที)mysql> แทรกลงในค่า NULL_Demo (2345,'Carol','UK');แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.35 วินาที) mysql> แทรกลงในค่า NULL_Demo (233444, NULL, NULL); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.60 วินาที) mysql> แทรกลงในค่า NULL_Demo (NULL, NULL, NULL); แบบสอบถามตกลง 1 แถว ได้รับผลกระทบ (0.27 วินาที)

แสดงระเบียนทั้งหมดจากตารางโดยใช้คำสั่ง select แบบสอบถามมีดังนี้ −

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

ผลลัพธ์

<ก่อนหน้า>+---------+----------+-------------+| รหัสผู้ใช้ | ชื่อผู้ใช้ | ที่อยู่ผู้ใช้ |+---------+----------+-------------+| 12345 | จอห์น | NULL || 2345 | แครอล | สหราชอาณาจักร || 233444 | NULL | NULL || NULL | NULL | NULL |+-------+----------+-------------+4 แถวในชุด (0.00 วินาที)

ต่อไปนี้คือข้อความค้นหาที่ใช้ได้กับคุณสมบัติ IS NULL และ IS NOT NULL

กรณีที่ 1 - ไม่เป็นโมฆะ

แบบสอบถามมีดังนี้ −

mysql> เลือก *จาก NULL_Demo โดยที่ UserId =2345 และ UserName ='Carol' และ UserAddress ไม่ใช่ NULL;

ต่อไปนี้เป็นผลลัพธ์ที่แสดงเร็กคอร์ด NOT NULL ตามเงื่อนไขที่กำหนดไว้ในแบบสอบถามด้านบน -

<ก่อนหน้า>+---------+----------+-------------+| รหัสผู้ใช้ | ชื่อผู้ใช้ | ที่อยู่ผู้ใช้ |+---------+----------+-------------+| 2345 | แครอล | สหราชอาณาจักร |+---------+----------+-------------+1 แถวในชุด (0.00 วินาที)

กรณีที่ 2 − ไม่ NULL

แบบสอบถามมีดังนี้ −

mysql> เลือก *จาก NULL_Demo โดยที่ UserName ='John' และ UserAddress IS NULL;

ต่อไปนี้เป็นผลลัพธ์ที่แสดงระเบียน NULL ตามเงื่อนไขที่กำหนดไว้ในแบบสอบถามด้านบน -

<ก่อนหน้า>+---------+----------+-------------+| รหัสผู้ใช้ | ชื่อผู้ใช้ | ที่อยู่ผู้ใช้ |+---------+----------+-------------+| 12345 | จอห์น | NULL |+-------+----------+-------------+1 แถวในชุด (0.00 วินาที)