SQL查询where子句太长

Urb*_*coz 2 sql vb.net ms-access

我在'where'子句中编写了一个带有很多'或'的SQL查询:

"SELECT * FROM myTable WHERE col1='a' or col1='b' or col1='c'...etc"
Run Code Online (Sandbox Code Playgroud)

我正在尝试通过vb.net运行查询,但我不断收到"查询太复杂"的错误消息.

我猜我已达到一定的上限.任何人都知道解决这个问题的方法,而不仅仅是将其分解为多个查询?

Dea*_*ean 6

如果您查询的那么简单就不会更好用

SELECT * FROM myTable WHERE col1 in ('a','b','c')
Run Code Online (Sandbox Code Playgroud)

但它有助于发布实际查询,以便我们给出准确的答案


Mar*_*ram 6

如何使用IN运算符呢?

SELECT Field1,Field2 FROM Table1 WHERE Field1 IN('Val1','Val2',....)


rkg*_*rkg 5

您可以使用SQL IN运算符而不是具有多个OR条件.