কম্পিউটার

সঞ্চিত পদ্ধতি ব্যবহার করে IF শর্ত সহ MySQL সমষ্টি প্রশ্ন


The Sum() হল MySQL-এর একটি সমষ্টিগত ফাংশন৷ আপনি যদি কন্ডিশনের সাথে যোগ কোয়েরি ব্যবহার করতে পারেন। যদি কন্ডিশন সহ যোগফলের প্রশ্ন বোঝার জন্য, আসুন একটি টেবিল তৈরি করি।

একটি টেবিল তৈরি করার জন্য ক্যোয়ারী −

mysql> সারণি তৈরি করুন SumWithIfCondition −> ( −> ModeOfPayment varchar(100) −> , −> Amount int −> ); কোয়েরি ঠিক আছে, 0 সারি প্রভাবিত (1.60 সেকেন্ড)

সন্নিবেশ কমান্ড ব্যবহার করে টেবিলে কিছু রেকর্ড সন্নিবেশ করান। প্রশ্নটি নিম্নরূপ -

SumWithIfCondition মানগুলিতে
mysql> সন্নিবেশ করান )mysql> SumWithIfCondition মান ('অফলাইন',20); কোয়েরি ঠিক আছে, 1 সারি প্রভাবিত (0.13 সেকেন্ড) mysql> SumWithIfCondition মানগুলিতে সন্নিবেশ করুন ('Online',200); কোয়েরি ঠিক আছে, 1 সারি প্রভাবিত (0.16 সেকেন্ড)> SumWithIfCondition মান ('অফলাইন',30); কোয়েরি ঠিক আছে, 1 সারি প্রভাবিত (0.11 সেকেন্ড) mysql> SumWithIfCondition মানগুলিতে সন্নিবেশ করুন ('Online',300); কোয়েরি ঠিক আছে, 1 সারি প্রভাবিত (0.17 সেকেন্ড)

সিলেক্ট স্টেটমেন্ট ব্যবহার করে টেবিল থেকে সমস্ত রেকর্ড প্রদর্শন করুন। প্রশ্নটি নিম্নরূপ -

SumWithIfCondition থেকে
mysql> নির্বাচন করুন;

নিচের আউটপুট −

+---------------+---------+| মোডঅফপেমেন্ট | পরিমাণ |+---------------+---------+| অফলাইন | 10 || অনলাইন | 100 || অফলাইন | 20 || অনলাইন | 200 || অফলাইন | 30 || অনলাইন | 300 |+---------------+---------+6 সারি সেটে (0.00 সেকেন্ড)

এখানে একটি সংরক্ষিত পদ্ধতি রয়েছে যা একটি স্ট্রিংকে একটি প্যারামিটার হিসাবে নেয় −

mysql> ডিলিমিটার //mysql> পদ্ধতি তৈরি করুন sp_GetSumWithPaymentMode11(PaymentMode varchar(200))-> begin−> Sum-Condition থেকে TotalAmount হিসাবে PaymentMode,sum(if(ModeOfPayment=PaymentMode,Amount,0)) নির্বাচন করুন; /কোয়েরি ঠিক আছে, 0 সারি প্রভাবিত (0.32 সেকেন্ড)mysql> বিভেদক;

এখন আপনি কল কমান্ড ব্যবহার করে সঞ্চিত পদ্ধতিতে কল করতে পারেন।

কেস 1 − অনলাইনের জন্য

প্রশ্নটি নিম্নরূপ -

mysql> কল sp_GetSumWithPaymentMode11('অনলাইন');

নিচের আউটপুট −

<প্রে>+------------+------------+| পেমেন্টমোড | মোট পরিমাণ |+------------+-------------+| অনলাইন | 600 |+------------+------------+1 সারি সেটে (0.00 সেকেন্ড) কোয়েরি ঠিক আছে, 0 সারি প্রভাবিত হয়েছে (0.01 সেকেন্ড)

কেস 2 − অফলাইনের জন্য

প্রশ্নটি নিম্নরূপ -

mysql> কল sp_GetSumWithPaymentMode11('অফলাইন');

নিচের আউটপুট −

<প্রে>+------------+------------+| পেমেন্টমোড | মোট পরিমাণ |+------------+-------------+| অফলাইন | 60 |+------------+---------------+1 সারি সেটে (0.00 সেকেন্ড) কোয়েরি ঠিক আছে, 0 সারি প্রভাবিত হয়েছে (0.01 সেকেন্ড)
  1. মাইএসকিউএল ওয়ার্কবেঞ্চ ব্যবহার করে একটি সঞ্চিত পদ্ধতি তৈরি করবেন?

  2. নির্দিষ্ট শর্ত সহ রেকর্ড আপডেট করার জন্য MySQL সংরক্ষিত পদ্ধতি?

  3. একটি MySQL সঞ্চিত পদ্ধতির ভিতরে ডায়নামিক এসকিউএল ক্যোয়ারী প্রয়োগ করবেন?

  4. Apache এর সাথে MySQL ব্যবহার করা