SQL Where Condition 一列有超过 15 个不同的字符串

SQL Where Condition having 15+ different strings for one column

我想为 1 列实现多个特定参数,例如:

select * from table1 
where column1 = a or column1 = b or column1  = c ...

能否以更好的方式完成(SQL 使用中的语句 超过 10 行 使用 OR 语句它会再增加 10 行 O.o 并且它会使代码 慢得多!)

您可以使用 in:

select t.*
from t
where column in ( . . . );

in 列表相当于一堆 or 条件。有一些细微差别。例如,in 列表中的所有值将被转换为相同的类型。如果一个是数字,其余是字符串,那么所有都将转换为字符串——可能会产生错误。

为了性能,您需要 t(column) 上的索引。