“.... WHERE A ='B'请求出错

时间:2013-07-26 03:36:14

标签: sql sql-server

我正在使用SQL Server 2008.我有一个数据库(表名:Data),其中一列的名称是title,另一列是date。

第一栏中的一个条目是:

WOLVERINE LE COMBAT DE L'IMMORTEL

然而,这里有什么不起作用:

select date from Data where title = 'WOLVERINE LE COMBAT DE L''IMMORTEL'
select date , title from Data where title LIKE '%WOLVERINE LE COMBAT DE L''IMMORTEL%'
select date , title from Data where title LIKE '%WOLVERINE LE%'

这是什么工作:

 select date , title from Data where title LIKE '%WOLVERINE%'
 select date , title from Data where title LIKE '%LE COMBAT DE L''IMMORTEL%'


 select date , title from Data where title LIKE '%WOLVERINE  LE%' 

是的,当有两个空格时,它适用于'WOLVERINE LE',即使我很确定数据库中只有一个空格(就像我提出请求时那样)。 有人知道怎么会出现这个错误吗?

编辑:很抱歉看起来它们之间确实有两个空格,当我试图在我的aspx页面中显示它时,两个空格会自动替换为一个空格,这就是为什么我看不到它。

1 个答案:

答案 0 :(得分:1)

如果你对这个没有任何困惑。然后只删除所有 white space 形式的边

select date 
from Data 
where REPLACE(title,' ','') = REPLACE('WOLVERINE LE COMBAT DE L''IMMORTEL',' ','')