কম্পিউটার

MySQL TRUNCATE() এবং ROUND() ফাংশনের মধ্যে উল্লেখযোগ্য পার্থক্য কী?


The TRUNCATE()৷ ফাংশনটি দশমিক স্থানের ডি নম্বরে কাটা X এর মান ফেরাতে ব্যবহৃত হয়। যদি D 0 হয়, তাহলে দশমিক বিন্দু সরানো হয়। যদি D ঋণাত্মক হয়, তাহলে মানের পূর্ণসংখ্যা অংশে মানগুলির D সংখ্যা কাটা হয়। নিম্নলিখিত উদাহরণ বিবেচনা করুন –

mysql> Select TRUNCATE(7.536432,2);
+----------------------+
| TRUNCATE(7.536432,2) |
+----------------------+
|                 7.53 |
+----------------------+
1 row in set (0.00 sec)

The ROUND() ফাংশন Xকে নিকটতম পূর্ণসংখ্যাতে বৃত্তাকার করে দেয়। যদি একটি দ্বিতীয় আর্গুমেন্ট, D, সরবরাহ করা হয়, তাহলে ফাংশনটি X বৃত্তাকারে D দশমিক স্থানে ফেরত দেয়। D অবশ্যই ধনাত্মক হতে হবে নতুবা দশমিক বিন্দুর ডানদিকের সমস্ত সংখ্যা মুছে ফেলা হবে। নিম্নলিখিত উদাহরণটি বিবেচনা করুন -

mysql>SELECT ROUND(5.693893);
+---------------------------------------------------------+
|                    ROUND(5.693893)                      |
+---------------------------------------------------------+
|                           6                             |
+---------------------------------------------------------+
1 row in set (0.00 sec)  

mysql>SELECT ROUND(5.693893,2);
+---------------------------------------------------------+
|                   ROUND(5.693893,2)                     |
+---------------------------------------------------------+
|                          5.69                           |
+---------------------------------------------------------+
1 row in set (0.00 sec)  

উপরের সংজ্ঞা এবং উদাহরণ থেকে আমরা এই দুটি ফাংশনের মধ্যে নিম্নলিখিত পার্থক্য লক্ষ্য করতে পারি -

  • ROUND() ফাংশন সংখ্যাটিকে উপরে বা নিচে রাউন্ড করে দ্বিতীয় আর্গুমেন্ট D এবং সংখ্যার উপর নির্ভর করে (D দশমিক স্থানের পরে অঙ্ক>=5 বা না)।
  • TRUNCATE() ফাংশন D দশমিকের পরে ডিজিট>=5 নাকি না চেক না করেই দশমিক স্থানের D সংখ্যা পর্যন্ত সংখ্যাকে ছেঁটে দেয়।
mysql> Select ROUND(1.289,2)AS 'AFTER ROUND',TRUNCATE(1.289,2)AS 'AFTER TRUNCATE';
+-------------+----------------+
| AFTER ROUND | AFTER TRUNCATE |
+-------------+----------------+
|        1.29 |           1.28 |
+-------------+----------------+
1 row in set (0.00 sec)

  1. মাইএসকিউএল-এ int এবং পূর্ণসংখ্যার মধ্যে পার্থক্য কী?

  2. MySQL এ 'AND' এবং '&&' এর মধ্যে পার্থক্য?

  3. মাইএসকিউএল-এ TINYINT(1) এবং বুলিয়ানের মধ্যে পার্থক্য কী?

  4. MySQL এ!=NULL এবং IS NOT NULL এর মধ্যে পার্থক্য কি?