0

我有三个表,我需要根据类别表中存在的搜索关键字查找行业。

供参考-我附上了表格描述的屏幕截图

一世。类别表 ID 存在于 categories_to_industries
ii 中。categories_to_industries id 存在于行业
ii。每个类别都有 n 个行业。

我想要一个 mysql 查询来按类别名称获取行业名称。

希望这些信息足够了。让我知道是否还有其他关于结构的信息。

如果有人对此有很好的解决方案,请帮助我。

4

4 回答 4

1

一个简单INNER JOIN的就是你所需要的。

SELECT  a.*
FROM    Industries a
        INNER JOIN Category_to_industries b
            ON a.ID = b.industry_id
        INNER JOIN Categories c
            ON b.category_ID = c.id
WHERE   c.category_name = 'Fired'

您在 sql 查询中看到的字母 ( a, b, ) 称为别名。c

要进一步了解有关联接的更多信息,请访问以下链接:

于 2013-09-17T09:48:11.347 回答
0

试试这个查询 -

select industry_name from Industries where id in ( select industry_id from category_to_industries where category_id in( (select id from Categories where category_name = "Fired") ));

于 2013-09-17T09:57:49.227 回答
0

尝试这个

    SELECT industry_id FROM category_to_industries WHERE category_id = 
       (

       SELECT id FROM categories WHERE category_name = "Fired"
       )
于 2013-09-17T09:50:58.083 回答
0

这非常简单:

SELECT Industries.* FROM Industries
JOIN category_to_industries ON (Industries.id = category_to_industries.industry_id)
JOIN Categories ON (Categories.id = category_to_industries.category_id)
WHERE Categories.category_name='Fired';
于 2013-09-17T09:52:16.167 回答