簡體   English   中英

如何從MySQl Workbench中每個輸入表都具有一行的三個獨立表中返回輸出表?

[英]How to return an output table from three separate tables that has one row from each input table in MySQl Workbench?

提出的問題如下:

編寫一個顯示學生成績單的查詢。 查詢應輸出列:

  1. 學生的名字
  2. 課程名稱
  3. 數值等級

要獲得額外的學分,請將該成績作為字母而不是數字列出。

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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM