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

MySQL-এ IFNULL দিয়ে শুধু NULL মানवाले রেকর্ড আপডেট করা

MySQL-এ IFNULL() ফাংশন ব্যবহার করে NULL মানवाले কলামগুলোতে নির্দিষ্ট মান (যেমন ০) সেট করা যায়, নন-NULL মানগুলো অপরিবর্তিত রাখা যায়।

সিনট্যাক্স

IFNULL(expression, value_if_null)
  • expression NULL হলে value_if_null রিটার্ন করে
  • অন্যথায় expression-র মুল মান রিটার্ন করে

উদাহরণ: টেবিল তৈরি এবং ডেটা ইনসার্ট

mysql> create table DemoTable817(Value int); 
Query OK, 0 rows affected (0.53 sec)
mysql> insert into DemoTable817 values(10); 
Query OK, 1 row affected (0.13 sec) 
mysql> insert into DemoTable817 values(null); 
Query OK, 1 row affected (0.09 sec) 
mysql> insert into DemoTable817 values(20); 
Query OK, 1 row affected (0.11 sec) 
mysql> insert into DemoTable817 values(null); 
Query OK, 1 row affected (0.11 sec)

সকল রেকর্ড দেখানো

mysql> select * from DemoTable817;
+-------+
| Value |
+-------+
| 10    |
| NULL  |
| 20    |
| NULL  |
+-------+
4 rows in set (0.00 sec)

NULL মানগুলো ০ দিয়ে রিপ্লেস করা

mysql> update DemoTable817 set Value=IFNULL(Value,0); 
Query OK, 2 rows affected (0.17 sec) 
Rows matched: 4  Changed: 2  Warnings: 0

আপডেট後の রেকর্ড দেখানো

mysql> select * from DemoTable817;
+-------+
| Value |
+-------+
| 10    |
| 0     |
| 20    |
| 0     |
+-------+
4 rows in set (0.00 sec)

IFNULL vs COALESCE vs CASE

SELECT-এ ব্যবহার (ডেটা বদলায় না)

SELECT IFNULL(Value, 0) as Value FROM DemoTable817;

সারসংক্ষেপ: UPDATE ... SET col = IFNULL(col, default) দিয়ে NULL মানগুলোই আপডেট হয়, বাকিগুলো অপরিবর্তিত থাকে।

  1. MySQL-এ IF() ফাংশন দিয়ে NOT NULL মান માટે ১ এবং NULL জন্য ০ দেখানো

  2. MySQL-এ IFNULL() দিয়ে NULL মানকে ১ এবং নন-নালকে ১ যোগ করে আপডেট করা

  3. MySQL-এ প্রথম ৩ রোয়ের কলাম মান নির্দিষ্ট মান দিয়ে আপডেট করা

  4. MySQL-এ ENUM টাইপ ব্যবহার করে কলাম মান সীমাবদ্ধ করা

কপিরাইট © https://bd.wsxdn.com সমস্ত অধিকার সংরক্ষিত
ফাংশনব্যাখ্যাউদাহরণ
IFNULL(expr, val)২ আর্গুমেন্ট, MySQL-নির্দিষ্টIFNULL(col, 0)
COALESCE(v1, v2, ...)একাধিক আর্গুমেন্ট, ANSI SQL স্ট্যান্ডার্ডCOALESCE(col1, col2, 0)
CASE WHEN col IS NULL THEN 0 ELSE col ENDসবচেয়ে ফ্লেক্সিবলজটিল লজিকের জন্য