sql - 在 PostgreSQL 中将多个“AND”与“LIKE”语句组合
问题描述
在 PostgreSQL 中构建一个基本的搜索工具。
当我设置如下基本查询时,我会收到数据。
SELECT *
FROM schema_name.table_name
WHERE column_name1 = 'sometext' AND column_name2 LIKE '%sometext%'
;
但是,当我和下面的 where 子句的更多条件时,查询会执行,但我没有收到任何数据。
SELECT *
FROM schema_name.table_name
WHERE column_name1 = 'sometext' AND column_name2 LIKE '%sometext%' AND column_name3 = 'somemoretext'
;
我已经测试了单个查询以确保有满足所有条件的记录并且它们存在。但是,我找不到将条件绑定到一个查询中的方法。我在网上看到的大多数示例都停留在两个条件下,或者没有将“AND”与“LIKE”结合起来。任何帮助将不胜感激,谢谢!
-编辑1从这里开始-
在 PostgreSQL 中不生成数据的示例查询
SELECT *
FROM ctgov.studies
WHERE (overall_status = 'Recruiting') AND (official_title LIKE '%immunotherapy%') AND (source LIKE '%university%')
;
当我通过网站执行相同的搜索时,我为数据库收集数据,它返回 163 条匹配记录。在这种情况下使用“或”将检索与我正在寻找的所有条件不匹配的记录。
解决方案
我认为你OR
需要AND
SELECT *
FROM schema_name.table_name
WHERE column_name1 = 'sometext' OR column_name2 LIKE '%sometext%' OR column_name3 = 'somemoretext'
推荐阅读
- php - 如何在 php 中创建类似 javascript 的对象
- python - 任何人都可以帮助我们将 Power Bi embed 与 Python Django 框架集成
- python - 如果 targetSum 可以通过添加 numbers 数组中存在的数字来实现,则返回布尔值的函数
- javascript - d3.js v4 嵌套到层次结构 - 无法读取值
- python - 为什么这段代码比我的更高效?
- javascript - 如何将地图显示为来自 url 的矢量数据
- reactjs - 如何在同一台服务器上部署 Nodejs 后端和 Reactjs 前端
- c# - 在新列中按总和显示分组
- java - Java:查找csv字符串A的值是否属于字符串B的模式
- amazon-web-services - aws 自动缩放组 ec2 实例在销毁之前创建