SQL JOIN

SQL join, দুইটি বা দুইয়ের বেশি সমূহতে কোনও কোনও স্তম্ভের সম্পর্ক অনুযায়ী তথ্য গ্রহণ করতে ব্যবহৃত হয়。

Join এবং Key

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

ডাটাবেসের সমূহগুলি একেবারের মধ্যে কীর মাধ্যমে যুক্ত হয়। প্রধান কী (Primary Key) হল এমন একটি স্তম্ভ, যাতে প্রত্যেক সারিতে এর মান অভিন্ন হয়। সমূহে, প্রত্যেক প্রধান কীর মান অভিন্ন হয়। এর উদ্দেশ্য, প্রত্যেক সমূহতে সমস্ত তথ্যকে পুনরাবৃত্ত করতে হয় না এমনকি, সমূহগুলির মধ্যে তথ্যকে মিলিত করা হয়。

দেখুন "Persons" সমূহটি:

Id_P LastName FirstName ঠিকানা সিটি
1 Adams John অক্সফোর্ড স্ট্রিট লন্ডন
2 বাশ জর্জ ফাইথ এভেনিউ নিউ ইয়র্ক
3 Carter Thomas চাংগান স্ট্রিট বেইজিং

মহোদয়, "Id_P" সমূহটি Persons সমূহতে প্রধান কী হয়। এর মানে, কোনও দুইটি সারির Id_P একই হতে পারে না। যদিও দুইজন ব্যক্তির নাম একই হতে পারে, Id_P তাদেরকে পৃথক করতে পারে。

এখন দেখুন "Orders" সমূহটি:

Id_O OrderNo Id_P
1 77895 3
2 44678 3
3 22456 1
4 24562 1
5 34764 65

মহোদয়, "Id_O" সমূহটি Orders সমূহতে প্রধান কী হয়, এবং "Orders" সমূহতে "Id_P" সমূহটি "Persons" সমূহতে ব্যক্তিদের উল্লেখ করতে ব্যবহৃত হয়, ব্যক্তির নাম ব্যবহার করতে হয় না。

Please note that the 'Id_P' column links the two tables above.

Reference two tables

We can get data from two tables by referencing two tables:

Who ordered the product and what product did they order?

SELECT Persons.LastName, Persons.FirstName, Orders.OrderNo
FROM Persons, Orders
WHERE Persons.Id_P = Orders.Id_P 

Result Set:

LastName FirstName OrderNo
Adams John 22456
Adams John 24562
Carter Thomas 77895
Carter Thomas 44678

SQL JOIN - Using Join

In addition to the above method, we can also use the keyword JOIN to get data from two tables.

If we want to list the orders of all people, we can use the following SELECT statement:

SELECT Persons.LastName, Persons.FirstName, Orders.OrderNo
FROM Persons
INNER JOIN Orders
ON Persons.Id_P = Orders.Id_P
ORDER BY Persons.LastName

Result Set:

LastName FirstName OrderNo
Adams John 22456
Adams John 24562
Carter Thomas 77895
Carter Thomas 44678

Different SQL JOINs

In addition to the INNER JOIN (inner join) we used in the above examples, we can also use other types of joins.

Below is a list of JOIN types you can use, as well as the differences between them.

  • JOIN: Returns rows if there is at least one match in the table
  • LEFT JOIN: Returns all rows from the left table even if there is no match in the right table
  • RIGHT JOIN: Returns all rows from the right table even if there is no match in the left table
  • FULL JOIN: Returns rows if there is a match in either table