我有一个看起来像的查询:
SELECT LEN(REPLACE(address, ' CA', '')) FROM Tbl
我现在需要在计算它的长度之前对一个字段进行多次替换。
即,我需要做类似的事情:
SELECT LEN(REPLACE(address, ' CA', '') AND REPLACE(address, ' CA', '')) FROM Tbl
这显然是不正确的SQL。
有办法做到这一点吗?
如果重要的话,我正在使用MS-SQL 2008.
答案 0 :(得分:3)
是的!你只需要嵌套它们
select
replace(
replace(address,' CA','')
, ' CA','') as blerg
from TBl
答案 1 :(得分:1)
你需要像这样嵌套函数调用:
SELECT LEN(REPLACE(REPLACE(address, ' CA', ''), ' NY', '')) FROM Tbl
上面的查询将使用“”替换“CA”和“NY”后的字符串长度。我用“NY”换掉了你的第二个“CA”,因为用“”两次替换“CA”是多余的。