MySQL中PreparedStatement sql中in的引号问题

在JDBC开发中使用 PreparedStatement 的?拼装数据的时候,会自动加上单引号,那么使用in多条查询的时候,只会查询出来一条,就得不到咱们想要的结果,以下:spa

指望为:SELECT * FROM user WHERE id in(2,3,4,5) .net

结果为:SELECT * FROM user WHERE id in('2,3,4,5') blog

而后就开始想办法:开发

SELECT * FROM user WHERE id in(replace('2,3,4,5',"'",'')) 字符串

最后解决办法:
SELECT * FROM user WHERE FIND_IN_SET(id,'2,3,4,5') 语法

必须使用FIND_IN_SET(id,'2,3,4,5') 才能达到需求,语法:FIND_IN_SET(列名,字符串值) 数据

解决这个问题,感谢如下连接的博主:查询

http://blog.csdn.net/u014520745/article/details/54091256co

相关文章
相关标签/搜索