使用此请求:
<?php
$query = '
SELECT
*
FROM
posts
WHERE
post_type = "post" AND
post_status = "publish" AND
post_content LIKE "%'.$search_string.'%" OR
post_title LIKE "%'.$search_string.'%"
';
在上述条件下,我需要从posts
表中收集所有数据。
由于没有问题,我将描述我想做什么。假设一条记录实际上是post,状态为publish
,并且请求中的post_content
或post_title
字段中存在匹配项。
因此,我得到了最后两个操作条件(在标题中检查合规性)。其余的都被忽略了。
使用此
$query = 'SELECT * FROM posts WHERE (post_type = "post" AND post_status = "publish") AND (post_content LIKE "%'.$search_string.'%" OR post_title LIKE "%'.$search_string.'%")';
只需组合LIKE子句。
$query = 'SELECT * FROM posts WHERE
post_type = "post" AND
post_status = "publish" AND (post_content LIKE "%'.$search_string.'%" OR
post_title LIKE "%'.$search_string.'%")';
您需要组合OR,这意味着两列值的组合。