MySQL ตรวจสอบว่าคอลัมน์เป็น Null หรือไม่

บทนำ

มีสาเหตุหลายประการที่คุณอาจต้องการตรวจสอบว่ามีคอลัมน์อยู่หรือไม่ NULL ใน MySQL:

  • ไปยัง กรองผลการค้นหา – คุณอาจต้องการแยกแถวด้วย NULL ค่าจากผลลัพธ์การสืบค้นของคุณ ตัวอย่างเช่น คุณอาจต้องการรับรายชื่อผู้ใช้ทั้งหมดที่ได้ระบุที่อยู่อีเมลไว้ แต่ไม่รวมผู้ใช้ที่ไม่ได้ระบุ

  • ไปยัง อัปเดตหรือลบแถว – คุณอาจต้องการอัปเดตหรือลบเฉพาะแถวที่มี NULL ค่าในคอลัมน์ใดคอลัมน์หนึ่ง ตัวอย่างเช่น คุณอาจต้องการตั้งค่าตัวยึดตำแหน่งสำหรับผู้ใช้ทั้งหมดที่ยังไม่ได้ระบุ

  • ไปยัง จัดการกับข้อมูลที่ขาดหายไป - ในหลายกรณี, NULL ค่าสามารถบ่งชี้ว่าข้อมูลที่ขาดหายไปหรือไม่ทราบข้อมูลอย่างผิดพลาด กำลังตรวจสอบ NULL ค่าสามารถช่วยให้คุณจัดการข้อมูลนี้ได้อย่างเหมาะสมในแอปพลิเคชันของคุณ

  • ไปยัง บังคับใช้ความสมบูรณ์ของข้อมูล – คุณอาจต้องการตรวจสอบให้แน่ใจว่าบางคอลัมน์ไม่ได้เป็นเช่นนั้น NULL เพื่อรักษาความสมบูรณ์ของข้อมูลของคุณ ตัวอย่างเช่น คุณอาจต้องการให้แน่ใจว่าผู้ใช้ทั้งหมดมีNULL ที่อยู่อีเมล.

โดยรวมแล้วกำลังตรวจสอบอยู่ NULL ค่าสามารถเป็นส่วนสำคัญในการทำงานกับข้อมูลใน MySQL

ในบทความสั้น ๆ นี้ เราจะมาดูกันว่ามีอะไรบ้าง NULL ใน MySQL คือ และวิธีการตรวจสอบว่ามีคอลัมน์อยู่หรือไม่ NULL. นอกจากนี้ เราจะดูตัวอย่างแบบสอบถามที่พบทั้งสองอย่าง NULL และช่องว่างในคอลัมน์ที่ระบุ

ความหมายของ NULL ใน MySQL

ใน MySQL NULL เป็นค่าพิเศษที่แสดงถึง ไม่มีค่า. มันไม่เหมือนกับสตริงว่างหรือเลข 0 เป็นต้น

คอลัมน์ในตาราง MySQL สามารถกำหนดเป็น NULLซึ่งหมายความว่าสามารถจัดเก็บได้ NULL ค่านิยม ซึ่งแตกต่างจากคอลัมน์ที่กำหนดเป็น NOT NULLซึ่งหมายความว่าไม่สามารถจัดเก็บได้ NULL และต้องระบุค่าเมื่อมีการแทรกแถวใหม่ลงในตาราง เกรงว่าจะเกิดข้อผิดพลาด

วิธีตรวจสอบว่ามีคอลัมน์อยู่หรือไม่ NULL ใน MySQL

ตอนนี้เราสามารถกระโดดไปที่ข้อความค้นหาจริงที่จะกรองออกทั้งหมดได้ NULL ค่าจากคอลัมน์ตัวอย่าง เพื่อตรวจสอบว่ามีคอลัมน์อยู่หรือไม่ NULL ใน MySQL คุณสามารถใช้ไฟล์ IS NULL โอเปอเรเตอร์:

SELECT * FROM table_name WHERE column_name IS NULL;

สิ่งนี้จะส่งคืนแถวทั้งหมดจาก table_name โดยที่ค่านั้นอยู่ในนั้น column_name is NULL.

นอกจากนี้คุณยังสามารถใช้ IS NOT NULL ผู้ดำเนินการตรวจสอบการไม่NULL ค่า:

SELECT * FROM table_name WHERE column_name IS NOT NULL;

สิ่งนี้จะส่งคืนแถวทั้งหมดจาก table_name โดยที่ค่านั้นอยู่ในนั้น column_name ไม่ใช่ NULL.

หมายเหตุ โปรดจำไว้ว่า NULL เป็นค่าพิเศษใน MySQL ที่แสดงถึงการไม่มีค่า มันไม่เหมือนกับสตริงว่างหรือตัวเลข 0

นอกจากนี้ เราสามารถดูแลค่าพิเศษทั้งหมดที่อาจแสดงถึงการไม่มีรายการคอลัมน์ (NULL, 0และสตริงว่าง) ในแบบสอบถามเดียว:

SELECT * FROM table_name WHERE column_name IS NULL OR column_name = '' OR column_name=0;

ซึ่งจะกรองแถวทั้งหมดจาก table_name โดยที่ค่านั้นอยู่ในนั้น column_name เป็นหนึ่งในสิ่งต่อไปนี้: NULL, 0 หรือสตริงว่าง

สรุป

โดยสรุป การตรวจสอบว่าคอลัมน์เป็นโมฆะใน MySQL สามารถทำได้โดยใช้ IS NULL ผู้ดำเนินการใน SELECT คำแถลง. โอเปอเรเตอร์นี้สามารถใช้ใน WHERE ส่วนคำสั่งเพื่อกรองชุดผลลัพธ์และส่งกลับเฉพาะแถวที่มีคอลัมน์ที่ระบุอยู่ NULL.

นอกจากนี้ยังสามารถใช้ IS NOT NULL โอเปอเรเตอร์เพื่อส่งคืนแถวที่ไม่มีคอลัมน์ NULL. สิ่งสำคัญคือต้องสังเกตว่า NULL ค่าแสดงถึงข้อมูลที่ขาดหายไปหรือไม่ทราบ และค่าเหล่านั้นแตกต่างจากศูนย์หรือสตริงว่าง โดยใช้ IS NULL และ IS NOT NULL ผู้ประกอบการคุณสามารถจัดการได้อย่างมีประสิทธิภาพ NULL ค่าในการสืบค้น MySQL ของคุณ และให้แน่ใจว่าผลลัพธ์ของคุณถูกต้องและมีความหมาย

ประทับเวลา:

เพิ่มเติมจาก สแต็ค