我陷入了一个非常复杂的问题。 我在我的数据库中定义了一个包含以下字段的表:id,title,category,little,flag,description。 对于此表中具有特定名称的搜索部分,我在函数中编写了以下查询:
$dsearch=mysql_real_escape_string($condition['title']);
"select id, title , category, little, flag, description
from tbl_contents
where title RLIKE '[[:<:]]".$dsearch."[[:>:]]'
or
description RLIKE '[[:<:]]".$dsearch."[[:>:]]'
order by priority desc"
现在这里是我的问题:当在此表的“描述字段”中找到“dsearch”时,我也想要它的“位置”。例如:如果dsearch = Chance和Chance存在于其中一行的描述字段中,它将返回该描述字段中Chance的位置。 你会帮助我吗? 谢谢
答案 0 :(得分:2)
我在输出中引入了两个列,一个用于标题位置,另一个用于描述位置。删除不需要的POSITION输出列。
"select id, title , category, little, flag, description,
POSITION('$dsearch' IN title) AS pos_title,
POSITION('$dsearch' IN description) AS pos_desc,
from tbl_contents
where title RLIKE '[[:<:]]".$dsearch."[[:>:]]'
or
description RLIKE '[[:<:]]".$dsearch."[[:>:]]'
order by priority desc"
注意:根据您的语言语法将$dsearch
输入提供给POSITION函数
有关POSITION功能的信息
https://dev.mysql.com/doc/refman/5.6/en/string-functions.html#function_position