如何使用 IN 设置sql的值,该值可以容纳变量数字,例如 … WHERE … status IN(4,6,7); ?
PreparedStatement ps = con.prepareStatement( "SELECT ea.* FROM employeeAssignment ea " + "JOIN employee e ON e.employeeID = ea.employeeID " + "WHERE e.resourceID = ? and ea.status IN (?);"); ps.setInt(1, 75); ps.setInt(2, someArray/some thing other?);
您可以根据需要传入的状态码生成SQL IN子句。因此,如果您的状态为,IN (4,6,7)则可以生成以与代码相同的问号结尾的SQL语句IN (?,?,?)。
IN (4,6,7)
IN (?,?,?)