0

我有一个多项选择,其中选项进入带有分隔符的表格,***因此该字段s_industry中的数据如下所示:

Social Care***Healthcare***Nursing***

我的 SQL 查询是这样的:

SELECT * FROM `jobs` 
LEFT JOIN `employers` ON `jobs`.`user_id`=`employers`.`user_id`
WHERE (`jobs`.`primary_sector` LIKE '%pr%' OR `jobs`.`secondary_sector` LIKE '%pr%') 
OR (`jobs`.`primary_sector` LIKE '%dentist%' OR `jobs`.`secondary_sector` LIKE '%dentist%') OR (`jobs`.`primary_sector` LIKE '%marketing%' OR `jobs`.`secondary_sector` LIKE '%marketing%') 
AND `jobs`.`location` LIKE '%Manchester%' 
AND `jobs`.`archived`='0' 
AND `jobs`.`featured`='0' ORDER BY `jobs`.`job_id

我可以说 % pr % 两边都有一些空间,但这不会忽略***. 有没有办法让我将***其视为空间或其他解决方案?

4

1 回答 1

2

不是开玩笑,但这表明底层数据库设计不好。你有机会修改它吗?这种查询正是我们规范化数据库内容的原因,即拆分成表,其中t_sector将是一个查找表,作业将通过t_job_sector链接到它,每个扇区映射一个条目。

于 2012-10-15T13:26:16.367 回答