SQL JOIN
- Previous Page SQL Aliases
- Next Page SQL Inner 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
- Previous Page SQL Aliases
- Next Page SQL Inner Join