MySql通过其他表选择列

时间:2010-12-08 10:13:35

标签: php mysql

这个很难解释,所以我试试看。

我有一个像这样工作的论坛:

sections>categories>topics>posts

每个部分都有自己的预备等级1 2 3或4。

它适用于直接网址,但当然如果有人转到直接网址,则需要检查其提交。

因此,主题ID 3在类别2中,而类别ID 2在部分ID 1中(例如)。

所以我如何检查预约,我得到了类似的东西,但当然我现在卡住了。

SELECT forum_section.section_level FROM forum_section WHERE forum_categorie.categorie_section_id = "Here the select categorie ID needs to go???"

如果我不清楚请说出来,我会尝试发布我正在使用的代码,以及完整的表格布局。

提前致谢。

2 个答案:

答案 0 :(得分:1)

您必须告诉服务器如何加入2个表

例如

SELECT forum_section.section_level
FROM forum_section, forum_categorie
WHERE forum_section.cat_id = forum_categorie.cat_id
AND forum_categorie.categorie_section_id = "Here the select categorie ID needs to go???"

假设cat_id是连接表的列(我不知道它的名称是什么,或者在你的情况下它是否存在)。

答案 1 :(得分:1)

我猜你是在主题表中存储类别ID,在类别表中存储部分ID

所以使用join ...

SELECT forum_section.section_level FROM forum_topic LEFT JOIN
forum_category ON forum_topic.topic_category_id = forum_category.category_id
LEFT JOIN
forum_section ON forum_category.category_section_id = forum_section.section_id
WHERE
forum_topic = 'Forum topic ID';