在项目中用的是 EF.MySQL,在查询中用到某一个字段的值在某几个中.一开始想到的是 in. 但是,这个字段是 int 类型的,传入的参数需要用“,”分隔.这样传入的就是字符型的. 这样的结果是:本来是 in (1,2,3),这样传参变成 in (‘1,2,3’)和预期的不一样. 为了防止SQL语句的注入,没有使用拼接语句.找了半天发现 find_in_set 这个函数可以达到效果. 来举结果例子: select * from table_name t where find_in_set(t.…