如何在MySQL中实现关键字搜索?

我是SQL编程的新手。

我有一个表的工作,其中字段是idpositioncategorylocationsalary

rangedescriptionrefno

我想从前端实施 。关键字可以位于上表的任何字段中。

这是我尝试过的查询,但包含许多重复的行:

SELECT

a.*,

b.catname

FROM

job a,

category b

WHERE

a.catid = b.catid AND

a.jobsalrange = '15001-20000' AND

a.jobloc = 'Berkshire' AND

a.jobpos LIKE '%sales%' OR

a.jobloc LIKE '%sales%' OR

a.jobsal LIKE '%sales%' OR

a.jobref LIKE '%sales%' OR

a.jobemail LIKE '%sales%' OR

a.jobsalrange LIKE '%sales%' OR

b.catname LIKE '%sales%'

回答:

对于VARCHAR字段上的单个关键字,可以使用LIKE

SELECT id, category, location

FROM table

WHERE

(

category LIKE '%keyword%'

OR location LIKE '%keyword%'

)

对于描述,通常最好添加全文索引并进行全文搜索(仅适用于MyISAM):

SELECT id, description

FROM table

WHERE MATCH (description) AGAINST('keyword1 keyword2')

以上是 如何在MySQL中实现关键字搜索? 的全部内容, 来源链接: utcz.com/qa/432993.html

回到顶部