|
SubjectId |
SubjectName |
|
1 |
C Language |
|
2 |
Java Language |
|
ChapterId |
ChapterName |
SubjectId |
|
1 |
Introduction C |
1 |
|
2 |
Operator Java |
2 |
|
3 |
Operator python |
3 |
|
4 |
Operator R |
3 |
For both of the cases Result will be like this
|
SubjectId |
SubjectName |
ChapterId |
ChapterName |
|
1 |
C Language |
1 |
Introduction C |
|
2 |
Java Language |
2 |
Operator Java |
SELECT s.SubjectId as SubjectId, s.SubjectName as SubjectName, c.ChapterId as ChapterId, c.ChapterName as ChapterName FROM Subjects as s LEFT JOIN Chapters as c ON s.SubjectId = c.SubjectId
We can say this is as mirror effect.
SELECT s.SubjectId as SubjectId, s.SubjectName as SubjectName, c.ChapterId as ChapterId, c.ChapterName as ChapterName FROM Chapters as c RIGHT JOIN Subjects as s ON s.SubjectId = c.SubjectId
SELECT s.SubjectId as SubjectId, s.SubjectName as SubjectName, c.ChapterId as ChapterId, c.ChapterName as ChapterName FROM Subjects as s RIGHT JOIN Chapters as c ON s.SubjectId = c.SubjectId
And the above code will give the below output for only exact right join.
|
SubjectId |
SubjectName |
ChapterId |
ChapterName |
|
1 |
C Language |
1 |
Introduction C |
|
2 |
Java Language |
2 |
Operator Java |
|
NULL |
NULL |
3 |
Operator python |
|
NULL |
NULL |
4 |
Operator R |
If you don't have the above tables create those table from the below code and let's practice.
USE SQLExamples DROP TABLE Subjects DROP TABLE Chapters CREATE TABLE Subjects( SubjectId INT, SubjectName VARCHAR(30) ) SELECT * FROM Subjects CREATE TABLE Chapters( ChapterId INT, ChapterName VARCHAR(30), SubjectId int, )
First read the answer fully, then try to explain it in your own words. After that, open a few related questions and compare the concepts. This method helps you remember the topic for a longer time and improves exam preparation.