[英]SQL Query using INNER JOIN
編寫一個查詢,顯示所有參加課程的學生的名字、姓氏、課程編號和課程名稱 - 使用 INNER Join。 標記輸出列 Student First、Student Last、課程編號和課程名稱。 你應該有 7 行。
是我實驗室的問題。
有學生、課程、注冊三張表
我可以獲得在課程中注冊的學生的姓名
select firstname,lastname from students
inner join on registration students.studentid=registration.studentid
但是當我嘗試從課程表中獲取老師想要返回的其他數據時,它不起作用我嘗試了一百萬件事,但對我來說有意義的是
select firstname,lastname,coursenumber,coursename from students,courses
inner join registration on students.studentid=registration.studentid
但它在 on 子句中給了我一個錯誤 unknown column Students.studentid 。
你非常接近,錯過了registration
和courses
之間的加入條件。 您有隱式和顯式INNER JOIN
的奇怪組合。 您加入的courses
應該是另一個INNER JOIN
,它通過registration
加入到students
。
SELECT
firstname, /* <-- don't forget to label your columns as required */
lastname,
coursenumber,
coursename
FROM
students
/* `students` map into courses via many-to-many relation in `registration` */
INNER JOIN registration on students.studentid = registration.studentid
/* Inner join through `registration` into `courses` */
INNER JOIN courses ON registration.courseid = courses.courseid
並且不要忘記您的列別名以滿足列輸出命名要求。 在SELECT
列表中使用AS
關鍵字。 我會把那部分作業留給你解決。
標記輸出列 Student First、Student Last、課程編號和課程名稱
select firstname,lastname,coursenumber,coursename from students
inner join registration on students.studentid=registration.studentid
JOIN courses ON courses.courseid = registration.courseid
您在查詢中提到了courses
,但您沒有join
其加入任何內容。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.