簡體   English   中英

在PostgreSQL中結合多個'AND'與'LIKE'語句

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM