簡體   English   中英

如何在Postgres中將WHERE語句與OR數組組合使用?

[英]How to use a WHERE statement in Postgres with an array of OR combinations?

我不確定如何表達這個問題,但是前提是我有一個表,其中主鍵由兩列定義: rowcol 我還想查詢許多單獨的列,這就是我的問題所在。

如果我有一個名為id的簡單列,我將可以執行WHERE id=ANY($1)這樣的子句,其中$1是整數數組。 但是,如果主鍵由兩列組成,我將無法做到相同。

WHERE row=ANY($1) AND col=ANY($2)給了我想要的區域,但沒有我所需的確切元組集。 現在,我正在生成具有許多條件的模板查詢字符串,例如:

WHERE row=$1 AND col=$2 OR
      row=$3 AND col=$4 OR ... 

如何避免生成此“查詢模板”? 我認為這不是一個非常優雅的解決方案,但這是我現在擁有的解決方案。 任何見識將不勝感激!

where (row,col) = any(array[(1,2),(3,4)])

要么

where (row,col) in ((1,2),(3,4))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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