কম্পিউটার

মাইএসকিউএল-এ কোন রেকর্ড না থাকলে যোগফল বা 0 কীভাবে নির্বাচন করবেন?


আপনি COALESCE() এর ভিতরে সমষ্টি ফাংশন যোগ() ব্যবহার করতে পারেন। নিচের সিনট্যাক্সটি সকলের যোগফল প্রদান করে যদি রেকর্ডটি বিদ্যমান থাকে অন্যথায় 0 প্রদান করা হয়। সিনট্যাক্স নিম্নরূপ।

yourTableNamewhere yourColumnName1 like '%yourValue%' থেকে COALESCE(sum(yourColumnName2), 0) যেকোন পরিবর্তনশীল নাম হিসেবে নির্বাচন করুন;

উপরের সিনট্যাক্স বুঝতে, আসুন একটি টেবিল তৈরি করি। একটি টেবিল তৈরি করার প্রশ্নটি নিম্নরূপ।

mysql> টেবিল তৈরি করুন SumDemo-> (-> Words varchar(100),-> Counter int-> );কোয়েরি ঠিক আছে, 0 সারি প্রভাবিত (0.93 সেকেন্ড)

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

SumDemo মানগুলিতে
mysql> সন্নিবেশ করুন ('আপনি কি সেখানে',10); কোয়েরি ঠিক আছে, 1 সারি প্রভাবিত (0.16 সেকেন্ড)mysql> SumDemo মানগুলিতে সন্নিবেশ করুন ('আপনি কি সেখানে নেই',15); কোয়েরি ঠিক আছে, 1 সারি প্রভাবিত (0.13 সেকেন্ড)mysql> SumDemo মানগুলিতে সন্নিবেশ করুন('Hello This is MySQL',12); কোয়েরি ঠিক আছে, 1 সারি প্রভাবিত (0.09 সেকেন্ড)mysql> SumDemo মানগুলিতে সন্নিবেশ করুন ('হ্যালো এটি মাইএসকিউএল নয়',14);কোয়েরি ঠিক আছে, 1 সারি প্রভাবিত (0.24 সেকেন্ড)

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

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

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

<প্রে>+-------------------------+---------+| শব্দ | কাউন্টার |+-------------------------+---------+| তুমি কি সেখানে | 10 || তুমি কি সেখানে নেই | 15 || হ্যালো এটা MySQL | 12 || হ্যালো এটা MySQL নয় | 14 |+-------------------------+---------+4 সারি সেটে (0.00 সেকেন্ড)

এখানে একটি ক্যোয়ারী যা রেকর্ড থাকাকালীন মোট যোগফল দেয়।

mysql> SumDemo থেকে COALESCE(sum(counter), 0) AS SumOfAll নির্বাচন করুন যেখানে '%hello%' এর মত শব্দ;

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

<প্রে>+---------+| সামঅল |+---------+| 26 |+---------+1 সারি সেটে (0.00 সেকেন্ড)

যদি রেকর্ডটি বিদ্যমান না থাকে তবে আপনি 0 পাবেন। প্রশ্নটি নিম্নরূপ।

mysql> SumDemo থেকে COALESCE(sum(counter), 0) AS SumOfAll নির্বাচন করুন যেখানে '%End of MySQL%' মত শব্দ;

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

<প্রে>+---------+| সামঅল |+---------+| 0 |+---------+1 সারি সেটে (0.00 সেকেন্ড)
  1. আমরা কিভাবে MySQL SUM() ফাংশন ব্যবহার করতে পারি?

  2. MySQL SELECT স্টেটমেন্টে NULL কিভাবে ব্যবহার করবেন?

  3. মাইএসকিউএল-এ রিকারসিভ সিলেক্ট কোয়েরি কীভাবে করবেন?

  4. কিভাবে MySQL থেকে শেষ 10 সারি নির্বাচন করবেন?