一尘不染

jdbc prepareStatements用于IN中的多个值

sql

如何使用 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?);

阅读 175

收藏
2021-05-23

共1个答案

一尘不染

您可以根据需要传入的状态码生成SQL IN子句。因此,如果您的状态为,IN (4,6,7)则可以生成以与代码相同的问号结尾的SQL语句IN (?,?,?)

2021-05-23