最近在写DAO层的时候,遇到一个问题,就是使用like进行模糊查询时,输入下划线,无法精确查到数据,而是返回所有的数据. 这让我很好奇,百度之后才发现,原来是因为有些特殊字符需要进行转义才可以进行查询. 首先理解一下什么是特殊字符. 在ascii码表中,特殊字符的范围如下.即从32~47 58~64 91~96 123~126. 模糊查询时,有两种方法可以进行转换. 1. 使用REGEXP_LIKE方法,这是个使用正则表达式来查询的方法,因此有此字符需要进行转义才能查询,如$ *等,转义符为反斜