我需要一个查询来检索与指定的“行业”相关的所有商店
我的朋友设计的表没有外键和多对多关系,他用Regex分隔时用“,”
餐桌店
id |电话|地址|类型
1 | 11111 | XXXXX |,10,12,13
3 | 22121 | XXXXX |,33,37,38号
5 | 11111 | XXXXX |,51,52,55
表格类型
ID |行业|类型
10服务出租车
12 |服务|交付
13 |服务|邮件
33 |初级|通电
37 |原水
38 |一次|气
51 |教育|小学
52 |教育|高中
55 |教育|大学
60。。。
70。。。
有没有可能在单个查询中检索到类似于ex:WHERE types.industry='service'的内容?
我很难做到这一点,虽然所有的都是关于连接或子查询等,但我没有找到解决方案。
寻求帮助。
提前谢谢
最佳答案
假设我理解正确,一种选择是使用join
:
select *
from shops s
join types t on find_in_set(t.id, s.type)
where t.industry = 'service'
SQL Fiddle Demo