কম্পিউটার টিউটোরিয়াল

MySQL-এ TINYINT কলামে <> 1 বা IS NULL শর্ত দিয়ে রেকর্ড ফিল্টার করুন

MySQL-এ TINYINT কলাম (সাধারণত বুলিয়ান হিসেবে ব্যবহৃত: 0, 1, NULL) থেকে ১ ছাড়া সব রেকর্ড (অর্থাৎ ০ এবং NULL) ফিল্টার করতে <> 1 OR IS NULL শর্ত ব্যবহার করা হয়।

উদাহরণ

১. টেবিল তৈরি করুন (isMarried TINYINT)

mysql> CREATE TABLE DemoTable (
    -> EmployeeId INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    -> EmployeeName VARCHAR(20),
    -> isMarried TINYINT
    -> );

২. ডেটা ইনসার্ট করুন (NULL, 1, 0 মিশ্রিত)

mysql> INSERT INTO DemoTable(EmployeeName, isMarried) VALUES('Chris', NULL);
mysql> INSERT INTO DemoTable(EmployeeName, isMarried) VALUES('David', 1);
mysql> INSERT INTO DemoTable(EmployeeName, isMarried) VALUES('Mike', 0);
mysql> INSERT INTO DemoTable(EmployeeName, isMarried) VALUES('Sam', NULL);
mysql> INSERT INTO DemoTable(EmployeeName, isMarried) VALUES('Bob', 0);

৩. সব রেকর্ড দেখুন

mysql> SELECT * FROM DemoTable;

আউটপুট:

+------------+--------------+-----------+
| EmployeeId | EmployeeName | isMarried |
+------------+--------------+-----------+
| 1          | Chris        | NULL      |
| 2          | David        | 1         |
| 3          | Mike         | 0         |
| 4          | Sam          | NULL      |
| 5          | Bob          | 0         |
+------------+--------------+-----------+

৪. isMarried <> 1 বা IS NULL রেকর্ড ফিল্টার করুন

mysql> SELECT * FROM DemoTable WHERE isMarried <> 1 OR isMarried IS NULL;

৫. ফলাফল

+------------+--------------+-----------+
| EmployeeId | EmployeeName | isMarried |
+------------+--------------+-----------+
| 1          | Chris        | NULL      |
| 3          | Mike         | 0         |
| 4          | Sam          | NULL      |
| 5          | Bob          | 0         |
+------------+--------------+-----------+

ব্যাখ্যা: David (isMarried=1) বাদ পড়েছে। বাকি NULL এবং 0 ভ্যালু वाले রেকর্ডগুলো ফিল্টার হয়েছে।

সরল বিকল্প: WHERE isMarried != 1 OR isMarried IS NULL বা WHERE NOT (isMarried = 1) (NULL সেফলি এক্সক্লুড করে না, তাই OR IS NULL দরকার)।

সেরা অনুশীলন: বুলিয়ান কলামে NOT NULL DEFAULT 0 দিয়ে NULL এড়িয়ান।

  1. MySQL-এ CONCAT() ও IFNULL() ব্যবহার করে NULL বাদ দিয়ে স্ট্রিং ক্যাটেনেট করা

  2. MySQL কোয়ারি: IS NULL বা !=1 শর্ত অনুযায়ী রেকর্ড প্রদর্শন করা

  3. MySQL-এ রেকর্ড থেকে সর্বোচ্চ মান বের করা

  4. MySQL-এ GREATEST() ফাংশন ব্যবহার করে একাধিক কলামে NULL আছে কিনা যাচাই করা