sql语句模糊查询时查询内容包含 通配符“%”,占位符“_”时 使用转义字符

时间:2021-08-10 09:50:05

如题,如果是手写SQL语句

 

  
  
  
-- 查询 lastname 列包含 “A_B” 的数据
select lastname from employees where lastname like ' %A_B% '

 

上面的SQL中 “A_B”包含 “_”,查询的时候会当成是占位符,导致 “ACB”,"ADB"....都成了搜索结果,

这不是我们要的结果 。

可以使用转义字符

 

  
  
  
-- 查询 lastname 列包含 “A_B”的数据
select lastname from employees wher lastname like ' %A\_B% ' escape ' \ '

 

更多可以google查询 sql中escape的使用