IN, NOT IN, BETWEEN, LIKE, ORDER BY

Database Management System

Lesson – 16

IN, NOT IN, BETWEEN, LIKE, ORDER BY

এই লেসনে আমরা IN, NOT IN, BETWEEN, LIKE, ORDER BY সম্পর্কে পড়বো

IN স্টেটমেন্টঃ

স্টেটমেন্ট ব্যবহার করে টেবিলের কোনো ফিল্ডের মানের সাথে নির্দিষ্ট কোনো মান বা একাধিক মানের তুলনা করে টেবিল থেকে নির্দিষ্ট রেকর্ড বের করা হয় ।

RollNameClassAddressMarks
1RinaXIIJiaganj450
2BinaXILalbag400
3TinaXIIJiaganj425
4DonaXILalbag400
5MonaXIIBerhampore421

যেমন – উপরের Student টেবিল থেকে যে সব ছাত্রের বাড়ি জিয়াগঞ্জ এবং লালবাগ সেই সমস্ত রেকর্ড জানতে চাওয়ার কমান্ড হল ।

SELECT  * FROM student WHERE  Address IN(‘Jiaganj’,‘Lalbag’);

তাহলে যে রেকর্ডগুলি পাওয়া যাবে তা নিম্নরুপঃ-

RollNameClassAddressMarks
1RinaXIIJiaganj450
2BinaXILalbag400
3TinaXIIJiaganj425
4DonaXILalbag400

NOT IN স্টেটমেন্টঃ

স্টেটমেন্ট ব্যবহার করে টেবিলের কোনো ফিল্ডের মানের সাথে নির্দিষ্ট কোনো মান বা একাধিক মানের তুলনা করে, সেই রেকর্ড বাদে বাকি রেকর্ড টেবিল থেকে করা হয় । অর্থাৎ IN কমান্ডের বিপরীত কাজ করে ।

RollNameClassAddressMarks
1RinaXIIJiaganj450
2BinaXILalbag400
3TinaXIIJiaganj425
4DonaXILalbag400
5MonaXIIBerhampore421

যেমন – উপরের Student টেবিল থেকে যে সব ছাত্রের বাড়ি জিয়াগঞ্জ এবং লালবাগ নয়  সেই সমস্ত রেকর্ড জানতে চাওয়ার কমান্ড হল ।

SELECT  * FROM student WHERE  Address NOT IN(‘Jiaganj’,‘Lalbag’);

তাহলে যে রেকর্ডগুলি পাওয়া যাবে তা নিম্নরুপঃ-

RollNameClassAddressMarks
5MonaXIIBerhampore421

BETWEEN স্টেটমেন্টঃ

স্টেটমেন্ট ব্যবহার করে টেবিলের কোনো ফিল্ডের নির্দিষ্ট ডেটা রেঞ্জের মধ্যে রেকর্ডগুলি কে খুজে বের করে ।

RollNameClassAddressMarks
1RinaXIIJiaganj450
2BinaXILalbag400
3TinaXIIJiaganj425
4DonaXILalbag400
5MonaXIIBerhampore421

যেমন – উপরের Student টেবিল থেকে  1 থেকে 4 রোল পর্য়ন্ত ছাত্রের রেকর্ড  জানতে চাওয়ার কমান্ড হল ।

SELECT  * FROM student WHERE Roll BETWEEN 1 and 4;

তাহলে যে রেকর্ডগুলি পাওয়া যাবে তা নিম্নরুপঃ-

RollNameClassAddressMarks
1RinaXIIJiaganj450
2BinaXILalbag400
3TinaXIIJiaganj425
4DonaXILalbag400

LIKE স্টেটমেন্টঃ

এই স্টেটমেন্টর Wild Card অর্থাৎ % (একাধিক অক্ষরের জন্য) এবং _(আন্ডারস্কোর) (একটি অক্ষরের জন্য) ব্যবহার করে টেবিলের কোনো ফিল্ডের নির্দিষ্ট টেক্স এর সাথে তুলনা করে রেকর্ডগুলি কে খুজে বের করে ।

RollNameClassAddressMarks
1RinaXIIJiaganj450
2BinaXILalbag400
3TinaXIIJiaganj425
4DonaXILalbag400
5MonaXIIBerhampore421

যেমন – উপরের Student টেবিল থেকে  যে সব ছাত্রের নামের প্রথম অক্ষর B তাদের রেকর্ড  জানতে চাওয়ার কমান্ড হল ।

SELECT  * FROM student WHERE Name LIKE ‘B%’;

তাহলে যে রেকর্ডগুলি পাওয়া যাবে তা নিম্নরুপঃ-

RollNameClassAddressMarks
2BinaXILalbag400

যেমন – উপরের Student টেবিল থেকে  যে সব ছাত্রের নামের শেষ অক্ষর B তাদের রেকর্ড  জানতে চাওয়ার কমান্ড হল ।

SELECT  * FROM student WHERE Name LIKE ‘%B’;

উপরের Student টেবিল থেকে  যে সব ছাত্রের নামের তৃতীয় অক্ষর B তাদের রেকর্ড  জানতে চাওয়ার কমান্ড হল ।

SELECT  * FROM student WHERE Name LIKE ‘_ _B%’;

উপরের Student টেবিল থেকে  যে সব ছাত্রের নামের মধ্যে Kumar আছে তাদের রেকর্ড  জানতে চাওয়ার কমান্ড হল ।

SELECT  * FROM student WHERE Name LIKE ‘%Kumar%’;

ORDER BY স্টেটমেন্টঃ

এই স্টেটমেন্টর ব্যবহার করে টেবিলের কোনো ফিল্ডের মানের ঊধবক্রম(Ascending) এবং অধঃক্রম(Descending) আনুসারে রেকর্ডগুলি সাজান যায় ।

RollNameClassAddressMarks
1RinaXIIJiaganj450
2BinaXILalbag400
3TinaXIIJiaganj425
4DonaXILalbag400
5MonaXIIBerhampore421

যেমন – উপরের Student টেবিল থেকে  সব ছাত্রের নামের ঊধবক্রম(Ascending) রেকর্ড গুলিকে সাজানর কমান্ড হল ।

SELECT  * FROM student ORDER BY Name;

তাহলে যে রেকর্ডগুলি পাওয়া যাবে তা নিম্নরুপঃ-

RollNameClassAddressMarks
2BinaXILalbag400
4DonaXILalbag400
5MonaXIIBerhampore421
1RinaXIIJiaganj450
3TinaXIIJiaganj425

উপরের Student টেবিল থেকে  সব ছাত্রের নামের অধঃক্রম(Descending)  রেকর্ড গুলিকে সাজানর কমান্ড হল ।

SELECT  * FROM student ORDER BY Name DESC;

RollNameClassAddressMarks
3TinaXIIJiaganj425
1RinaXIIJiaganj450
5MonaXIIBerhampore421
4DonaXILalbag400
2BinaXILalbag400
IN, NOT IN, BETWEEN, LIKE, ORDER BY

Leave a Reply