簡體   English   中英

MySQL從多個表中選擇

[英]MySQL Select From Multiple Tables

我正在創建一個數據庫,它具有下表和以下列:

  • 學生-(studentId,studentName,學位)
  • 模塊-(moduleId,moduleName,credit)
  • 已注冊-(studentId,moduleId)
  • 人員-(staffId,staffName,職等)
  • 教-(staffId,moduleName)

我從搜索中想要的是搜索由某個家庭教師教的模塊。

因此,例如,如果詹姆斯·威爾金森(James Wilkinson)正在教授英語和數學,則結果將顯示他所教的模塊和模塊ID。

嘗試這個:

select Module.Moduleid from Module inner join Teaches on Teaches.ModuleName=Module.ModuleName inner join staff on Staff.staffid=teaches.staffid where staff.staffname='James Wilkinso'

無論如何,您的結構有問題。 表教導應具有moduleID字段,而不是ModuleName。

希望這個幫助

對我來說似乎很簡單。

SELECT staffName, moduleName
FROM Staff a
JOIN teaches b on a.staffId=b.staffId
;
select module.module_id , module.module_name, teaches.staff_id from module 
INNER JOIN on module.module_name = teaches.module_name 
where teaches.staff_id in 
(select staff_id from staff where staff.staffname='James Wilkinson')

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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