如何将多个 table 列与多个值进行比较?

How to compare multiple table columns with multiple values?

我有一个 table 有 N 列,像这样


column 1 | column 2 | column 3 | ...column N


我有 n 个这样的值


value 1 , value 2 , value 3 , ...value n


我想将这些 n 值与我的 table 的 N 列进行比较。我可以做到的一种方法是:

Select * from table where

column 1 IN (value 1 , value 2 , value 3 , ...value n)
||
column 2 IN (value 1 , value 2 , value 3 , ...value n)
||
column 3 IN (value 1 , value 2 , value 3 , ...value n)
||
.
.
.
column n IN (value1 , value1 , value1 , ...value n)

这是最最快的方法吗?

你的情况没有。

如果可能,我建议更改数据库的结构:

table 编号 |栏目 | value_of_column |

日期示例:

1 | column_1 |  zzz
2 | colums_2 | yyyy
3 | colums_1 | yyyy
4 | colums_5 | yyyy
....

然后是您的查询:

select * from table where value_of_column in (value......)