我有三个不同的表。
第一张 table
第一个表是 language(id, language_name)//id 是主键。
第二张表
第二个表是 verse(id,topic_id, verse_text)//id 是主键,topic_id 是外键。
第三张表
第三个表是 verse_translations(id, verse_id, language_id, translations_text)//id 是主键,language_id 是语言表的外键引用,//verse_id 是 verse 表的外键引用。
现在我的问题是。
如何在一个 MYSql 查询中获取包含特定 topic_id 的诗歌翻译和可用语言的诗歌列表。
作为示例,我在下面给出了
verse_id | topic_id | verse | verse_translation | language |
1 1 verse here translation here English
translation here Spanish
translation here Japanese
translation here Italian
我们将不胜感激。
谢谢。
最佳答案
我认为应该这样做:
SELECT verse.id,
verse.topic_id,
verse.verse_text,
verse_translations.translations_text,
language.language_name
FROM verse
INNER JOIN verse_translations ON verse.id = verse_translations.verse_id
INNER JOIN language ON verse_translations.language_id = language.id
WHERE verse.topic_id = 1
请记住,所有行都已填满。所以 topic_id
列一直是 1
。
关于php - 如何从不同表中获取单个查询中的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20469055/