在我的数据库表中,我有一个名为item_name的列。其中一些值如下所示:
**Item_Name**
What's UP
Yahoo!!...
Alpha!@3568Numberic`;'"基本上,我试图传达的是,值中包含非字母数字字符。
我希望我的sql语句返回与行匹配的值,而不考虑非数字字符。
例如:
select *
from mutable
where item_name = 'whats up' or 'alpha3568numeric'此SQL语句应返回2行:
What's UP
Alpha!@3568Numberic`;'"发布于 2016-03-17 10:36:21
使用一个函数来剥离列中的所有非字母数字字符并返回输出字符串,就像这样:T-SQL strip all non-alpha and non-numeric characters您必须将其更改为也包含0-9
然后在where子句中使用类似以下内容:
where lower(RemoveNonAlphaCharacters(item_name))like '%whats up%' or
lower(RemoveNonAlphaCharacters(item_name))like '%alpha3568numeric%'发布于 2016-03-17 10:39:45
试试这个:
select *
from mutable
where SOUNDEX(item_name) = SOUNDEX('whats up') or
SOUNDEX(item_name) = SOUNDEX('alpha3568numeric')https://stackoverflow.com/questions/36050574
复制相似问题