PostgreSQL ইন ক্লজ

Postgresql Ina Klaja



আপনি PostgreSQL এ ব্যবহার করতে পারেন এমন প্রচুর ধারা রয়েছে। IN ধারাটি এই ধারাগুলির মধ্যে একটি, এবং এটির প্রচুর সুবিধা রয়েছে যখন আপনি এটি কীভাবে ব্যবহার করবেন তা বুঝতে পারেন বিশেষ করে যখন WHERE ধারার সাথে মিলিত হয়। IN ক্লজটি মূলত SELECT স্টেটমেন্টের সাথে কাজ করে যাতে আপনি কীভাবে কোয়েরিটি চালাতে চান তা ফিল্টার করে। যখন নির্বাহ করা হয়, IN ধারাটি নির্দিষ্ট তালিকাটি পরীক্ষা করে দেখতে এটি মানদণ্ডের সাথে মেলে কিনা এবং মিলিত মানগুলি আউটপুট করে।

PostgreSQL IN ক্লজের সাথে কীভাবে কাজ করবেন তা বোঝা

PostgreSQL-এ, আপনি WHERE ক্লজের সাথে IN ক্লজটি ব্যবহার করে আউটপুট ফিল্টার করার জন্য মানগুলির একটি তালিকার বিপরীতে চেক করেন এবং ফলাফলটি একটি বুলিয়ান মান।

এখানে ব্যবহার করার জন্য সিনট্যাক্স আছে:







মান IN (value1, value2, value_n);

প্রদত্ত সিনট্যাক্স মানটি নেয় এবং মান1, মান2 এবং মান_n এর বিপরীতে এটি পরীক্ষা করে। একটি মিল থাকলে এটি একটি বুলিয়ান ফেরত দেয়। চেক করার জন্য মানগুলির তালিকা স্ট্রিং এবং পূর্ণসংখ্যা সহ যেকোনো আক্ষরিক প্রকারের হতে পারে। এছাড়াও, আপনি একটি SELECT স্টেটমেন্টের মতো একটি সাবকোয়েরি তৈরি করতে পারেন।



আসুন PostgreSQL IN অপারেটর ব্যবহার করার বিভিন্ন উপায় নিয়ে আলোচনা করি।



1. একটি Subquery নিয়ে কাজ করা

যেমনটি আমরা আগে উল্লেখ করেছি, চেক করার মানটি একটি সাবকোয়েরি হতে পারে যা একটি কোয়েরি স্টেটমেন্ট যেমন SELECT ব্যবহার করে মানগুলি বের করে। এইভাবে, আপনি একটি প্রদত্ত কলামের মান পরীক্ষা করতে একটি টেবিল জিজ্ঞাসা করতে পারেন। আমাদের উদাহরণের জন্য নিম্নলিখিত টেবিল ব্যবহার করা যাক:





ধরুন আমরা সেই সমস্ত গ্রাহকদের পরীক্ষা করতে চাই যাদের 'order_id' ক্যোয়ারী বিভাগে নির্দিষ্ট করা মানগুলির যেকোনো একটি হতে পারে। আমরা আমাদের স্টেটমেন্টের প্রথম অংশ হিসেবে টার্গেট ভ্যালু যোগ করি এবং তারপর ক্যোয়ারী তৈরি করতে IN ক্লজের সাথে WHERE ক্লজ ব্যবহার করি।



এখানে আমাদের প্রশ্ন কিভাবে প্রদর্শিত হয়:

PostgreSQL 'গ্রাহক' টেবিলের 'order_id' কলামটি পরীক্ষা করে এবং সেই সমস্ত রেকর্ড ফেরত দেয় যার 'order_id' আমরা বন্ধনীতে নির্দিষ্ট করা যেকোনোটির সাথে মেলে।

প্রথম উদাহরণের জন্য, আমরা মানগুলির একটি পূর্ণসংখ্যা তালিকার একটি কেস ব্যবহার করেছি। আমরা স্ট্রিংগুলির বিরুদ্ধেও পরীক্ষা করতে পারি। মনে রাখবেন যে আপনার নির্দিষ্ট করা সমস্ত স্ট্রিং যদি লক্ষ্য মানের সাথে মেলে না, তবে কিছুই ফেরত দেওয়া হয় না। নিম্নলিখিত উদাহরণে কিছু স্ট্রিং রয়েছে যা আমাদের টেবিলে নেই। এই ধরনের স্ট্রিংগুলি বাদ দেওয়া হবে এবং শুধুমাত্র সেই মিলিত স্ট্রিংগুলি নিম্নলিখিত আউটপুটে প্রদর্শিত হবে:

2. IN (নির্বাচন) এর সাথে কাজ করা

কখনও কখনও, মানের তালিকা ম্যানুয়ালি নির্দিষ্ট করা কাজ নাও করতে পারে। আপনি আপনার টেবিল থেকে মানগুলির একটি তালিকা আনতে একটি SELECT বিবৃতি ব্যবহার করতে এবং লক্ষ্য মানের বিপরীতে পরীক্ষা করতে ব্যবহার করতে পারেন৷ আমাদের ডাটাবেসে নিম্নলিখিত টেবিলটি যুক্ত করে, আমরা আমাদের সাবকোয়েরি তৈরি করতে পূর্ববর্তী 'গ্রাহক' টেবিলের সাথে এটি একত্রিত করতে পারি:

ধরা যাক আমরা শুধুমাত্র 'অর্ডার' টেবিল থেকে রেকর্ড প্রদর্শন করতে চাই যদি লক্ষ্য মান (order_id) 'গ্রাহক' টেবিলে থাকে। এখানে, “customers.order_id” কলাম হল আমাদের মানগুলির তালিকা এবং আমরা “orders.order_id” কলামের সাথে এর মানগুলি পরীক্ষা করি।

এই ক্ষেত্রে, শুধুমাত্র তিনটি এন্ট্রি অনুসন্ধানের সাথে মেলে এবং এটিই আমরা আমাদের IN(SELECT) PostgreSQL ধারার আউটপুট হিসাবে পাই।

3. NOT IN PostgreSQL ক্লজের সাথে কাজ করা

পূর্ববর্তী কমান্ড ব্যবহার করে, আমরা লক্ষ্য মানের সাথে মেলে না এমন অন্যান্য মানগুলি প্রদর্শন করতে বেছে নিতে পারি। এর জন্য, আমরা IN ধারা যা করে তার বিপরীত করি। অত:পর, আমরা IN নট করার আদেশ প্রত্যাখ্যান করি।

এখানে আমরা কিভাবে আমাদের নতুন কমান্ড লিখি:

লক্ষ্য করুন যে আমরা উদাহরণ 2-এ যে আউটপুট পেয়েছি তার থেকে আমরা আলাদা আউটপুট পাচ্ছি। কারণ আমরা IN ক্লজের পরিবর্তে NOT IN দিয়ে কাজ করছি।

আদর্শভাবে, আপনি PostgreSQL IN ধারার সাথে যে ফলাফলগুলি পাবেন তা অস্বীকার করতে চাইলে আপনি NOT যোগ করতে পারেন। অ্যাপ্লিকেশন অন্তহীন হয়. আপনি যখন মানগুলি পরীক্ষা করতে চান এবং সেগুলি দ্রুত মেলে দেখতে চান, IN ধারাটি আপনার সেরা বন্ধু।

উপসংহার

IN ক্লজ WHERE ক্লজের সাথে কাজ করে মানের তালিকার বিপরীতে একটি লক্ষ্য মান পরীক্ষা করতে। IN ধারাটি একটি বুলিয়ান প্রদান করে যা নিশ্চিত করে যে লক্ষ্য মানের সাথে আপনার নির্দিষ্ট করা মানগুলির তালিকায় মিল আছে কিনা। আপনি আক্ষরিক হিসাবে মানগুলি নির্দিষ্ট করতে পারেন বা ব্যবহার করার জন্য একটি সাবকোয়েরি তৈরি করতে SELECT স্টেটমেন্ট ব্যবহার করতে পারেন। আপনি কিভাবে PostgreSQL IN ক্লজ ব্যবহার করতে পারেন তার তিনটি উদাহরণ আমরা দিয়েছি। আশা করি, এটি আপনাকে PostgreSQL IN ধারার সাথে কীভাবে কাজ করতে হয় তা বোঝার অন্তর্দৃষ্টি দিয়েছে।