Skip to content

Commit 6aec2b4

Browse files
committed
[SQL-242] Lateral Join vs. Subquery
1 parent 6dc794a commit 6aec2b4

File tree

2 files changed

+44
-0
lines changed

2 files changed

+44
-0
lines changed
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
SELECT
2+
f.id,
3+
f.name,
4+
t.course_id,
5+
t.semester,
6+
t.year
7+
FROM
8+
Faculty f
9+
LEFT JOIN LATERAL (
10+
SELECT
11+
te.course_id,
12+
te.semester,
13+
te.year
14+
FROM
15+
Teaching te
16+
WHERE
17+
te.faculty_id = f.id
18+
ORDER BY
19+
te.year DESC,
20+
CASE te.semester
21+
WHEN 'Fall' THEN 3
22+
WHEN 'Summer' THEN 2
23+
WHEN 'Spring' THEN 1
24+
ELSE 0
25+
END DESC
26+
LIMIT 1
27+
) t ON true;
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
SELECT
2+
f.id,
3+
f.name,
4+
(
5+
SELECT te.course_id
6+
FROM Teaching te
7+
WHERE te.faculty_id = f.id
8+
ORDER BY te.year DESC,
9+
CASE te.semester
10+
WHEN 'Fall' THEN 3
11+
WHEN 'Summer' THEN 2
12+
WHEN 'Spring' THEN 1
13+
ELSE 0
14+
END DESC
15+
LIMIT 1
16+
) AS latest_course_id
17+
FROM Faculty f;

0 commit comments

Comments
 (0)