এসকিউএল পিএইচপি ওয়ার্ডপ্রেস জাভাস্ক্রিপ্ট জেকুয়েরি এইচটিএমএল
লগইন
×

এসকিউএল টিউটোরিয়াল

হোম-Home সিনটেক্স-Syntax ডেটাবেস তৈরী-Create DB টেবিল তৈরী-Create Table ড্রপ-Drop সিলেক্ট-Select ইনসার্ট ইন্টু-Insert Into এসকিউএল-Where এসকিউএল-And এবং Or আপডেট-Update ডিলিট-Delete লাইক-Like সিলেক্ট টপ-Select Top অর্ডার বাই-Order By গ্রুপ বাই-Group By ডিস্টিংক্ট-Distinct সিলেক্ট ইন্টু-Select Into ইনসার্ট ইন্টু সিলেক্ট-Insert Into Select এসকিউএল-Not Null ইউনিক-Unique ডিফল্ট-Default চেক-Check প্রাইমারি কি-Primary Key ফরেন কি-Foreign Key এসকিউএল-In এসকিউএল-Between এসকিউএল-Auto Increment

এসকিউএল ডাটাবেস

কনস্ট্রেইন্ট-Constraints এসকিউএল-Joins এসকিউএল-Inner Join এসকিউএল-Left Join এসকিউএল-Right Join এসকিউএল-Full Join এসকিউএল-Union এসকিউএল-Null Values এসকিউএল-Null Functions এসকিউএল-Aliases এসকিউএল-Create Index এসকিউএল-Alter এসকিউএল-Views এসকিউএল-Having এসকিউএল-Wildcards এসকিউএল-Dates এসকিউএল-Data Types

এসকিউএল ফাংশন

এসকিউএল-Functions এসকিউএল-Avg() এসকিউএল-Count() এসকিউএল-First() এসকিউএল-Last() এসকিউএল-Max() এসকিউএল-Min() এসকিউএল-Sum() এসকিউএল-Ucase() এসকিউএল-Lcase() এসকিউএল-Mid() এসকিউএল-Len() এসকিউএল-Round() এসকিউএল-Now() এসকিউএল-Format()

অ্যাডভান্স এসকিউএল

এসকিউএল-অস্থায়ী(Temporary) টেবিল এসকিউএল-Injection এসকিউএল-Hosting

 

SQL NULL ফাংশন


SQL ISNULL(), NVL(), IFNULL() এবং COALESCE() ফাংশন

নিম্নের "Student_result" টেবিলটি লক্ষ্য করুনঃ

আইডি নং রোল নাম্বার লিখিত নাম্বার এমসিকিউ নাম্বার ফলাফল
১০১ ৫১ ৩৬ A+
১০২ ৫২ ৩৫ A+
১০৩ ৫৪ ৩০ A+
১০৪ ৫০ ৩১ A+
১০৫ ৪৯ ৩৩ A+

ধরুন "এমসিকিউ নাম্বার(Mcq_number)" কলামটি ঐচ্ছিক এবং ইহা Null ভ্যালু ধারণ করতে পারে।

নিম্নের উদাহরণটি লক্ষ করুনঃ

SELECT Roll_number, (Written_number+Mcq_number)
FROM Student_result;

উপরের উদাহরণে যদি "এমসিকিউ নাম্বার(Mcq_number)" কলামের ভ্যালু Null হয় তাহলে ফলাফলও Null হবে।

Null এর ভ্যালু নির্ধারণের জন্য মাইক্রোসফট ISNULL() ফাংশন ব্যবহার করে।

NVL(), IFNULL() এবং COALESCE() ফাংশন গুলোও একই কাজ করে।

Null ফাংশন ব্যবহারের উদ্দেশ্য হলো আমরা Null ভ্যালুর পরিবর্তে 0(শূন্য) পেতে চাই।

ISNULL() ফাংশন ব্যবহার করলে "এমসিকিউ নাম্বার(Mcq_number)" কলামের কোন মান Null হলেও হিসাব-নিকাশে কোন সমস্যা হবে না, কারন প্রতিটি Null ভ্যালুর জন্য ISNULL() ফাংশনটি একটি 0(শূন্য) রিটার্ন করবেঃ

MS Access এর জন্য
SELECT Roll_number, (Written_number+IIF(ISNULL(Mcq_number),0,Mcq_number))
FROM Student_result;

SQL Server এর জন্য
SELECT Roll_number, (Written_number+ISNULL(Mcq_number,0))
FROM Student_result;

ওরাকলে কোনো ISNULL() ফাংশন নেই। ওরাকলে আমরা ISNULL() এর পরিবর্তে NVL() ফাংশনটি ব্যবহার করবোঃ

Oracle এর জন্য
SELECT Roll_number, (Written_number+NVL(Mcq_number,0))
FROM Student_result;

MySQL এ ISNULL() ফাংশন আছে। তবুও ইহা মাইক্রোসফট ISNULL() ফাংশনের চেয়ে একটু ভিন্ন ভাবে কাজ করে।

MySQL এ আমরা IFNULL() ফাংশনটি ব্যবহার করবোঃ

MySQL এর জন্য
SELECT Roll_number, (Written_number+IFNULL(Mcq_number,0))
FROM Student_result;

অথবা আমরা COALESCE() ফাংশনটি ব্যবহার করতে পারিঃ

SELECT Roll_number, (Written_number+COALESCE(Mcq_number,0))
FROM Student_result;