✏️ Explanatory Question
|
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 |
|
NULL |
NULL |
3 |
Operator python |
|
NULL |
NULL |
4 |
Operator R |
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
We can say this is as a mirror effect.
SELECT s.SubjectId as SubjectId, s.SubjectName as SubjectName,
c.ChapterId as ChapterId, c.ChapterName as ChapterName
FROM Chapters as c
LEFT 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
LEFT JOIN Chapters as c
ON s.SubjectId = c.SubjectId
|
SubjectId |
SubjectName |
ChapterId |
ChapterName |
|
1 |
C Language |
1 |
Introduction C |
|
2 |
Java Language |
2 |
Operator Java |
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,
)