php - 多个 LIKE 引用多行的 WHERE 条件

标签 php mysql sql-like

我有一个 html/php 输入让我 $_POST['search_query']

我想按帖子标题或标签过滤结果。任何类似的东西都应该出现在结果表中。

我正在尝试这个查询:

SELECT * FROM posts WHERE activado='1' AND (titulo LIKE '%".$_POST['search_query']."%')
                    OR (tag1 LIKE '%".$_POST['search_query']."%') 
                    OR (tag2 LIKE '%".$_POST['search_query']."%') 
                    OR (tag3 LIKE '%".$_POST['search_query']."%') 

它只过滤“titulo”行,我还需要获取类似的标签行。

如果行是 Titulo、Tag1、Tag2 或 Tag3,我希望输出带来任何正在获取的类似行。目前仅获取具有相似内容的标题行。

我在这里错过了什么? 我敢打赌这是一个非常简单的改变。

最佳答案

请试试这个:

SELECT * FROM posts
WHERE activado='1'
AND ((titulo LIKE '%".$_POST['search_query']."%')
OR (tag1 LIKE '%".$_POST['search_query']."%')
OR (tag2 LIKE '%".$_POST['search_query']."%')
OR (tag3 LIKE '%".$_POST['search_query']."%') );

关于php - 多个 LIKE 引用多行的 WHERE 条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34669580/

相关文章:

php - 从列设置为给定值的数组中获取特定行

javascript - 无法在 WordPress UI 中解析 json 字符串

MySql 事件不再发生?

MySQL:将 "LIKE"搜索转换为全文?

php - 如何关闭MySQLi连接?

php - php页面可以访问/查看mysql日志文件吗?

php - mysql 查询没有收到正确的响应...或者其他什么

php - MySQL #1241 - 计数时操作数应包含 1 列

sql - NOT LIKE 和 LIKE 不返回相反的结果

ruby-on-rails - 使用 Rails 进行不区分大小写的 Postgres 搜索