我有三个表,我需要根据类别表中存在的搜索关键字查找行业。
供参考-我附上了表格描述的屏幕截图
一世。类别表 ID 存在于 categories_to_industries
ii 中。categories_to_industries id 存在于行业
ii。每个类别都有 n 个行业。
我想要一个 mysql 查询来按类别名称获取行业名称。
希望这些信息足够了。让我知道是否还有其他关于结构的信息。
如果有人对此有很好的解决方案,请帮助我。
一个简单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
要进一步了解有关联接的更多信息,请访问以下链接:
试试这个查询 -
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")
));
尝试这个
SELECT industry_id FROM category_to_industries WHERE category_id =
(
SELECT id FROM categories WHERE category_name = "Fired"
)
这非常简单:
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';