mysql - 如果其中一个具有另一个的外键,如何执行两个连接表的连接?

mysql - How to perform joining of of two junctional tables in case where one of them has foreign key of another?

我是数据库设计的新手,所以我还在学习,很抱歉使用了不恰当的术语,所以我会尽量用通用语言解释我遇到的问题。我学会了如何在中间的连接点 table 上加入两个 tables(获得结果),但是当我想加入一个 "regular" table 和一个路口 table 在另一个路口 table.

我有一个关系数据库,其中有 table 个,它们之间的关系如下:

我知道如何使用 hgs_translations 加入 hgs_transliterationshgs_gardinershgs_meaningshgs_word_types,但我不知道该怎么做是如何加入这 4 table 和 hgs_references table.

这是我加入低 4 tables 的代码:

SELECT hgs_transliterations.transliteration, hgs_gardiners.gardiners_code, hgs_meanings.meaning, hgs_word_types.word_type
FROM hgs_translations
JOIN hgs_transliterations ON hgs_translations.transliteration_id = hgs_transliterations.id
JOIN hgs_gardiners ON hgs_translations.gardiners_id = hgs_gardiners.id
JOIN hgs_meanings ON hgs_translations.meaning_id = hgs_meanings.id
JOIN hgs_word_types ON hgs_translations.word_type_id = hgs_word_types.id

我阅读了一些关于这个主题的教程,其中提到 ASINNER JOINOUTER JOIN,但我不太了解术语以及如何使用它来创建我想要的东西需要。对不起,也许是基本问题,但正如我所说,我只是一个初学者,我正在努力深入理解一些东西,以便我可以适当地使用它。提前谢谢你。

P.S。如果有人认为这不是好的数据库设计(tables 之间的关系设计),我想听听。

再添加两个连接:

SELECT hgs_transliterations.transliteration, hgs_gardiners.gardiners_code, 
       hgs_meanings.meaning, hgs_word_types.word_type,
       hgs_references.reference
FROM hgs_translations
JOIN hgs_transliterations ON hgs_translations.transliteration_id = hgs_transliterations.id
JOIN hgs_gardiners ON hgs_translations.gardiners_id = hgs_gardiners.id
JOIN hgs_meanings ON hgs_translations.meaning_id = hgs_meanings.id
JOIN hgs_word_types ON hgs_translations.word_type_id = hgs_word_types.id    
JOIN junc_translation_reference ON junc_translation_reference.translation_id = hgs_translations.id
JOIN hgs_references ON hgs_references.id = junc_translation_reference.reference_id