我想写一个查询

Select col1, col2
from table
where col1 = 'blah' or 'blah2' or 'blah3'
  and col2 = 'blah' or 'blah2' or 'blah3'


我习惯这样写一个单选项

select
    col1, col2
from
    table
where
    col1 = :col1 and col2 = :col2

Parameters.AddWithValue(":col1", 'blah')
Parameters.AddWithValue(":col2", 'blah')


现在,我想在它们之间添加或选项,显然上述代码将无法正常工作。 SQL适用于SQLite。谁能建议我该怎么做?我可能会为每个参数设置3个以上的不同值。我尝试搜索,但答案难以捉摸。

最佳答案

您仍然必须使用完整的表达式,即每次都需要写col1 =col2 =

或者,使用IN

SELECT ... WHERE col1 IN (:c11, :c12, :c13) AND col2 IN (:c21, :c22, :c23);

关于sql - 包含多个选项的SQL参数化查询,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33062680/

10-13 02:44