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

จะใช้ NULL ในคำสั่ง MySQL SELECT ได้อย่างไร?


ใน MySQL ความยาวของ NULL คือ 0 ในที่นี้ เราจะมาดูกันว่า NULL สามารถใช้กับคำสั่ง SELECT ได้อย่างไร ให้เราสร้างตารางโดยใช้คำสั่ง CREATE -

การสร้างตาราง −

mysql> สร้างตาราง NullWIthSelect-> (-> ชื่อ varchar(100)-> ); ตกลง ตกลง 0 แถวได้รับผลกระทบ (0.62 วินาที)

ด้านบน ฉันสร้างตารางสำเร็จแล้ว ตอนนี้ฉันจะแทรกบันทึกบางส่วนด้วยความช่วยเหลือของคำสั่ง INSERT -

การแทรกบันทึก -

mysql> INSERT ลงในค่า NullWIthSelect ('John'); Query OK, 1 แถวได้รับผลกระทบ (0.16 วินาที)mysql> INSERT ลงในค่า NullWIthSelect ('Bob'); Query OK, 1 แถวได้รับผลกระทบ (0.12 วินาที) mysql> INSERT เป็น NullWIthSelect values();Query OK, 1 แถวได้รับผลกระทบ (0.18 วินาที)mysql> INSERT เป็น NullWIthSelect ค่า ('Carol');Query OK, 1 แถวได้รับผลกระทบ (0.15 วินาที)mysql> INSERT เป็น NullWIthSelect ค่า ('');Query ตกลง 1 แถวได้รับผลกระทบ (0.16 วินาที)mysql> INSERT เป็นค่า NullWIthSelect ('David'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.19 วินาที) mysql> INSERT เป็นค่า NullWIthSelect (); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.08 วินาที) 

ด้านบน ฉันได้แทรก 7 ระเบียน โดยที่หนึ่งระเบียนมีค่าว่างและอีก 2 รายการมีค่าว่าง ส่วนที่เหลือมีค่าบางส่วน

เพื่อแสดงระเบียนทั้งหมด เราสามารถใช้คำสั่ง SELECT -

mysql> SELECT * จาก NullWIthSelect;

ต่อไปนี้เป็นผลลัพธ์

<ก่อนหน้า>+-------+| ชื่อ |+-------+| จอห์น || บ๊อบ || NULL || แครอล || || เดวิด || NULL |+-------+7 แถวในชุด (0.00 วินาที)

ตอนนี้เราสามารถใช้ NULL กับคำสั่ง SELECT ได้ดังรูปด้านล่าง

อันดับแรก ให้เราดูไวยากรณ์ −

เลือก * จาก yourTableNamet โดยที่ column_name เป็น NULL;

ใช้แบบสอบถามด้านบนเพื่อทราบว่าค่าคอลัมน์ใดเป็นโมฆะ แบบสอบถามมีดังนี้ −

mysql> SELECT * จาก NullWIthSelect โดยที่ชื่อเป็น NULL

ต่อไปนี้เป็นผลลัพธ์ -

<ก่อนหน้า>+------+| ชื่อ |+------+| NULL || NULL |+------+2 แถวในชุด (0.00 วินาที)

ตอนนี้ เราสามารถหาความยาวของค่า NULL ที่เป็น 0 ได้ แบบสอบถามมีดังต่อไปนี้ −

mysql> เลือกจำนวน (ชื่อ) จาก NullWIthSelect โดยที่ชื่อเป็น NULL

ต่อไปนี้เป็นผลลัพธ์ -

<ก่อนหน้า>+-------------+| นับ(ชื่อ) |+-------------+| 0 |+-------------+1 แถวในชุด (0.04 วินาที)