1.1 শর্তাধীন ফাংশনের তালিকা

if-elseএসকিউএল ল্যাঙ্গুয়েজে ফাংশনগুলির একটি তালিকা রয়েছে যা জাভাতে অপারেটরের সাথে কিছুটা মিল রয়েছে switch

মোট 4 টি ফাংশন আছে:

ফাংশন বর্ণনা
1 মামলা এনালগ সুইচ
2 IF() টারনারি অপারেটরের একটি অ্যানালগ বা if-else
3 IFNULL() if-else এর analogue
4 NULLIF() if-else এর analogue

এসকিউএল-এর শেষ তিনটি ফাংশন হিসাবে উপস্থাপিত হয়, এবং CASEএটি একটি পূর্ণাঙ্গ অপারেটর, তাই আমরা একেবারে শেষে এটি আলাদাভাবে বিবেচনা করব।

1.2 IF() ফাংশন

এসকিউএল-এর একটি ফাংশন IF()কিছুটা জাভাতে একটি টারনারি অপারেটরের মতো। এসকিউএল ভাষায়, এটি 3 টি পরামিতি নেয় এবং এর মতো দেখায়:

IF (condition, true, false)

ফাংশনে তিনটি এক্সপ্রেশন পাস করতে হবে IF:

  • সত্যের জন্য পরীক্ষিত একটি শর্ত;
  • শর্ত সত্য হলে একটি অভিব্যক্তি যা ফেরত দেওয়া হয়;
  • শর্ত মিথ্যা হলে একটি অভিব্যক্তি যা ফেরত দেওয়া হয়।

এটি কীভাবে কাজ করে তা বোঝা সহজ করার জন্য নীচে আমি কিছু উদাহরণ দেব:

অনুরোধ ফলাফল
1 যদি নির্বাচন করুন ( 1>2 , 2, 3) 3
2 যদি নির্বাচন করুন ( 1<2 , 'হ্যাঁ', 'না') 'হ্যাঁ'
3 IF ( STRCMP('test','test1' ), 'না', 'হ্যাঁ') নির্বাচন করুন 'না'

1.3 ফাংশন IFNULL() এবং NULLIF()

এছাড়াও ফাংশন দুটি পরিবর্তন আছে IF().

প্রথম পরিবর্তন হল ফাংশন IFNULL()। এটি শুধুমাত্র দুটি মান লাগে:

IFNULL (expression 1, expression 2)

যদি expression1 এর সমান না হয় NULL, তাহলে ফাংশনটি expression1 ফেরত দেবে । যদি expression1 IS NULL, তাহলে ফাংশনটি expression2 রিটার্ন করবে । সারাংশ হল ডিফল্ট মানের প্রতিস্থাপন যখন ক্ষেত্রটি সমান হয় NULL

ফাংশনের দ্বিতীয় পরিবর্তন IFহল ফাংশন NULLIF(), এটি দুটি মানও নেয়:

NULLIF (expression 1, expression 2)

এটি বিপরীত দিকে কাজ করে:

  • যদি expression1 expression2 এর সমান হয় , তাহলে ফাংশনটি রিটার্ন করে NULL;
  • যদি অভিব্যক্তি সমান না হয়, তাহলে অভিব্যক্তি 1 ফেরত দেওয়া হয় ।