SQL SELECT 来自 3 个表格

SQL SELECT from 3 tables

ft_pupils
- id //Primary Key
- name
- start_date

ft_entries
- id
- pupil_id //Foreign Key 
- aol_id

ft_aol
- id
- title

对于 ft_entries table 中的每个条目我想使用 SELECT 到 select ft_entries table 中的每个条目但 aol_id 替换为 ft_aol 内的标题。

我已经成功获得:

SELECT name, aol_id FROM ft_pupils, ft_entries WHERE pupil_id = ft_pupils.id

工作正常。

我希望 WHERE 位于 WHERE pupil_id = ft_pupils.id

我现在很迷茫

您可以尝试加入 3 table。

SELECT Name,title FROM ft_entries 
INNER JOIN ft_pupils ON pupil_id = ft_pupils.id
LEFT JOIN ft_aol ON ft_aol.id = aol_id

这将向您展示如何获取您要查找的数据并显示所有 ID。如果你不想看到它们,你可以删除它们:

SELECT a.id,
       b.pupil_id,
       c.id,
       a.NAME,
       a.start_date,
       c.title
FROM   ft_pupils a
       JOIN ft_entries b ON a.id = b.pupil_id
       JOIN ft_aol c ON c.id = b.aol_id