![](/img/trans.png)
[英]In MySql, How to Associate Three Random Rows from One Table to Each Row of a Another Table
[英]How to return an output table from three separate tables that has one row from each input table in MySQl Workbench?
提出的問題如下:
編寫一個顯示學生成績單的查詢。 查詢應輸出列:
要獲得額外的學分,請將該成績作為字母而不是數字列出。
3個相關表是:
注冊包含列
Section_ID / Student_ID /成績(這是使用4點GPA系統(不帶小數)的數字)
包含列的學生
身份證/姓名/電子郵件
包含列的課程
編號/標題/說明/單位
我能想到的最好的是:
select name, Grade, Title
from SELECT * FROM
(
student
join registration
on registration.Student_ID = student.ID
join course on course.ID = registration.Section_ID
) as transcript group by student ;
這給了我1064語法錯誤,我不確定為什么。 嘗試使用僅兩個有問題的表的嵌套選擇語句可以工作,不知道為什么拒絕來自三重聯接的選擇。
至於額外的學分部分,除了在成績列上運行更新表語句並將1,2,3,4設置為D,C,B,A之外,我不確定該做什么。
您的select語句存在一些語法問題。 查詢應如下。 您需要正確使用JOIN才能通過Relational Key列在兩個表之間建立關系。
SELECT name, Grade, Title
FROM Student A
INNER JOIN registration B B.Student_ID = A.ID
INNER JOIN Course C C.ID = B.Section_ID
要獲得每個學生的成績,請按以下方式應用腳本的過濾器末尾:
WHERE A.ID = N --Put Student ID Here.
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.