ฉันมีชั้นรูปร่างที่มีคุณลักษณะที่มีค่าที่ฉันต้องการจะใช้ตัวกรองสำหรับค่าที่แตกต่างจากNULLNULL
การใช้ gui ที่มีอยู่สำหรับการสร้างเคียวรีนั้นจะพยายามอย่างสังหรณ์ใจ
"obj_art" != NULL
ซึ่งหมายความว่า'ให้คุณสมบัติทั้งหมดที่มีแอตทริบิวต์ "obj_art" ต่างจากNULL" (นับได้มากกว่า 0 อย่างแน่นอน) การทดสอบข้อความค้นหานี้ให้ผลลัพธ์ที่แปลกประหลาดจากมุมมองของฉัน:
ดังนั้นสิ่งที่ฉันได้เรียนรู้จนถึงตอนนี้ก็คือฉันสามารถบรรลุสิ่งนี้ได้โดยใช้
"obj_art" IS NOT NULL
คำถามคือความแตกต่างระหว่าง!= NULLและIS NOT NULLคืออะไร?
!=ไม่ได้หมายความว่า "ไม่"; หมายความว่า "ไม่เท่ากับ" IS NOTหมายถึง "ไม่ได้" ดังนั้นผมจึงคิดว่านี่เป็นงานง่ายได้อย่างสมบูรณ์แบบ :)
NULLไม่ได้เป็นค่าฉันจะบอกว่ามันเป็นเรื่องง่ายที่จะลองใช้=หรือ!=เป็นวิธีที่คุณประเมินค่าอื่น ๆ มันไม่ได้จนกว่าคุณจะรู้ว่าNULLไม่ใช่ค่าที่ว่ามันเป็นงานง่ายที่จะใช้มากกว่าIS NOT !=หลายคนไม่ทราบว่าNULLแท้จริงแล้วคืออะไร
NULLอยู่ในรายการค่า (cp. ด้านบน) และถือว่าเป็นค่า 'ปกติ' และไม่มีปุ่มIS NULLหรือพลาดเช่นนั้นเหรอ! ดังนั้นเมื่อเพียงพิมพ์คำถามเหล่านี้และด้วยความรู้ที่NULLจะต้องได้รับการปฏิบัติในลักษณะพิเศษที่เราสามารถพูดคุยเกี่ยวกับสัญชาตญาณ แต่สำหรับ shure ไม่ได้อยู่ในบริบทของ GUI นี้


