在搜索之前替换字段的值

问题描述 投票:0回答:2

为了提高数据库中的搜索速度,我想做这样的事情:

如果字段TheFieldName(其中没有任何空格)与test相等则显示记录

我该怎么做?

这不适合我:

"SELECT * FROM TheTableName WHERE REPLACE(TheFieldName, ' ', '')=test"

错误:表达式中未定义的函数'REPLACE'

sql sql-server oledb ado
2个回答
1
投票

我似乎不太可能在SQL Server(或几乎任何其他数据库)中不知道replace()。但是,请检查以确保您使用的是您认为自己的数据库。

您所写的查询确实有错误 - 因为您似乎希望将test作为字符串。查询是否真的如下所示:

SELECT *
FROM TheTableName
WHERE REPLACE(TheFieldName, ' ', '') = 'test';

请注意'test'周围的报价。


0
投票

这应该工作。

"SELECT * FROM TheTableName WHERE rtrim(ltrim(TheFieldName))=test"
© www.soinside.com 2019 - 2024. All rights reserved.