MySQL-এ NULL এর সাথে তুলনা করার সময় বিশেষ নিয়ম মানى হয়। != NULL ব্যবহার করলে সবসময় NULL রিটার্ন করে, যা অর্থহীন। সঠিক পদ্ধতি হলো IS NOT NULL বা IS NULL ব্যবহার করা।
টেবিল ও ডেটা:
mysql> CREATE TABLE DemoTable1970 (Value INT); mysql> INSERT INTO DemoTable1970 VALUES(10), (NULL);
তুলনা করার কোয়েরি:
mysql> SELECT Value != NULL AS Output1, Value IS NOT NULL AS Output2 FROM DemoTable1970;
আউটপুট:
+---------+---------+ | Output1 | Output2 | +---------+---------+ | NULL | 1 | | NULL | 0 | +---------+---------+
ব্যাখ্যা
| এক্সপ্রেশন | Value=10 | Value=NULL |
|---|---|---|
Value != NULL | NULL | NULL |
Value IS NOT NULL | 1 (true) | 0 (false) |
Value IS NULL | 0 (false) | 1 (true) |
নিম্নলিখিত নিয়ম মনে রাখুন:
- NULL যেকোনো ভ্যালুর সাথে তুলনা করা যায় না (অপারেটর: =, !=, <, > ইত্যাদি) — ফলাফল সবসময় NULL।
- NULL চেক করতে হলে শুধু
IS NULLবাIS NOT NULLব্যবহার করুন। <=>(null-safe equal) অপারেটরও ব্যবহার করা যায়।