sql server查询替换 [英] sql server query replace
本文介绍了sql server查询替换的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
如何在单个替换函数中替换多个不同的字符(''+'',''-'',''/'',''('','')'').
我知道要使用replace(replace(replace(replace(replace(ssdsdsd,se,we))bu,t想要一次替换.
更好的方法是创建用户定义的功能 [ ^ ]许多Replace
&在SQLSELECT
语句中使用它
EDIT
创建 功能 Fn_Phone ( @ OffPhoneNo VARCHAR ( 100 ) ) 返回 VARCHAR ( 100 ) AS 开始 返回(LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE( @ OffPhoneNo ,' ',' '),' .',' '),' ' ' ' ' (',' '),' )',' '),CHAR ( 9 ),' '))))) END
现在在SELECT
语句中使用它
SELECT OffPhoneNo,dbo.FnPhone(OffPhoneNo) FROM [TableName]
亲爱的朋友,
我认为您必须在SQL Server中使用SPLIT函数的功能才能实现您的要求.
http://geekswithblogs.net/AngelEyes/archive/2007/04/12/111504.aspx [ ^ ]
http://www.sqlteam.com/forums/topic.asp?TOPIC_ID=50648 [ ^ ]
如果这对您有帮助,请将其标记为您的答案.
谢谢
how to replace multiple different characters(''+'',''-'',''/'',''('','')'') in single replace function.
i know using replace(replace(replace(replace(ssdsdsd,se,we) bu,t want in single replace.
plzz anyone can help me??
解决方案
Better way is create an User defined function[^] with those manyReplace
s & ans use it in your SQLSELECT
statement
EDITCREATE FUNCTION Fn_Phone ( @OffPhoneNo VARCHAR(100) ) RETURNS VARCHAR(100) AS BEGIN RETURN(LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(@OffPhoneNo,' ',''),'.',''),'-',''),'+',''),'(',''),')',''),CHAR(9),'')))) END
Now use it inSELECT
statement
SELECT OffPhoneNo, dbo.FnPhone(OffPhoneNo) FROM [TableName]
Dear Friend,
I think you have to use the functionality of SPLIT function in SQL Server in order to achieve you require.
http://geekswithblogs.net/AngelEyes/archive/2007/04/12/111504.aspx[^]
http://www.sqlteam.com/forums/topic.asp?TOPIC_ID=50648[^]
If this helps you out then mark this as your answer.
Thanks
这篇关于sql server查询替换的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文