[英]Combining multiple 'AND' with 'LIKE' statements in PostgreSQL
在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”將檢索與我要查找的所有條件都不匹配的記錄。
我認為您需要OR
AND
SELECT *
FROM schema_name.table_name
WHERE column_name1 = 'sometext' OR column_name2 LIKE '%sometext%' OR column_name3 = 'somemoretext'
感謝大家的幫助,得知我的查詢過於嚴格,我沒有考慮到文本識別中的大寫字母。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.