带有特殊字符的SQL查询 - 如何处理?

jes*_*ges 2 sql sql-server-2005 sql-like

我的名字很少

  1. 约翰,1
  2. 鬼才
  3. 玉米

这样的事情

现在,当我正在搜索我正在使用的这些名字时

select * from emp where empname like ('john,1,devil's,corn')
Run Code Online (Sandbox Code Playgroud)

但我没有得到预期的值,我也得到错误,因为emp名称包含特殊的字符,如'和'.

有人可以帮我解决这个问题吗?

gbn*_*gbn 6

假设您的示例字符串中有3个离散名称

完全符合.你需要加倍报价.

select * from emp where
empname IN ('john,1' , 'devil''s', 'corn')
Run Code Online (Sandbox Code Playgroud)

你也不能在SQL Server中使用LIKE/IN.

select * from emp where
  empname like '%john,1%'
  OR
  empname like '%devil''s%'
  OR
  empname like '%corn%'
Run Code Online (Sandbox Code Playgroud)