我进行了自动填充搜索,我希望从说明中获得字词建议。例如,我有一个帖子描述:"这是样本描述"。
我使用此查询
$sql ="SELECT post_content FROM {$wpdb->posts} WHERE LOWER(post_content) LIKE LOWER('%".$s."%') AND post_status='publish'";
但我得到了所有匹配的描述。我怎样才能得到一个与查询匹配的单词?例如,如果我写" sam ..."我想只得到"样品"单词,或者如果我写"样本des ..."我想得到"样本描述"不完全描述那个词就在哪里。
答案 0 :(得分:1)
如果适合您,可以试试这个:
<强>样品强>
SELECT
SUBSTRING_INDEX(
SUBSTRING('this is sample description and more' FROM LOCATE('sample des','this is sample description and more'))
,' '
,LENGTH('sample des') - LENGTH(replace('sample des', ' ', '')) +1
) as result;
<强>结果强>
result
sample description
为您的sql尝试此查询:
$sql ="
SELECT
SUBSTRING_INDEX(
SUBSTRING(post_content FROM LOCATE('".$s."',post_content))
,' '
,LENGTH('".$s."') - LENGTH(replace('".$s."', ' ', '')) +1
)
FROM {$wpdb->posts}
WHERE LOWER(post_content) LIKE LOWER('%".$s."%') AND post_status='publish'";
请告诉我它是否适合您(不是测试)