语法
REPLACE ( 'string_expression1' , 'string_expression2' , 'string_expression3' )参数
'string_expression1'待搜索的字符串表达式。string_expression1 可以是字符数据或二进制数据。'string_expression2'待查找的字符串表达式。string_expression2 可以是字符数据或二进制数据。'string_expression3'替换用的字符串表达式。string_expression3 可以是字符数据或二进制数据。返回类型
如果 string_expression(1、2 或 3)是支持的字符数据类型之一,则返回字符数据。如果 string_expression(1、2 或 3)是支持的 binary 数据类型之一,则返回二进制数据。示例
下例用 xxx 替换 abcdefghi 中的字符串 cde。SELECT REPLACE('abcdefghicde','cde','xxx')
GO下面是结果集:------------
abxxxfghixxx
(1 row(s) affected)
REPLACE ( 'string_expression1' , 'string_expression2' , 'string_expression3' )参数
'string_expression1'待搜索的字符串表达式。string_expression1 可以是字符数据或二进制数据。'string_expression2'待查找的字符串表达式。string_expression2 可以是字符数据或二进制数据。'string_expression3'替换用的字符串表达式。string_expression3 可以是字符数据或二进制数据。返回类型
如果 string_expression(1、2 或 3)是支持的字符数据类型之一,则返回字符数据。如果 string_expression(1、2 或 3)是支持的 binary 数据类型之一,则返回二进制数据。示例
下例用 xxx 替换 abcdefghi 中的字符串 cde。SELECT REPLACE('abcdefghicde','cde','xxx')
GO下面是结果集:------------
abxxxfghixxx
(1 row(s) affected)
打个比方
有一个msg=B_mo_V70_243
_表示空格
我想执行一条语句能使得运行出
品牌=mo
型号=v70
价格=243你们看应该怎么写?
有一个msg=B_mo_V70_243
_表示空格
我想执行一条语句能使得运行出
品牌=mo
型号=v70
价格=243你们看应该怎么写?
有一个msg=B_mo_V70_243
_表示空格
我想执行一条语句能使得运行出
品牌=mo
型号=v70
价格=243你们看应该怎么写?
,价格=stuff(msg,1,charindex(' ',msg),'')
from(
select 品牌=substring(msg,3,charindex(' ',msg,3)-3)
,msg=stuff(msg,1,charindex(' ',msg,3),'')
from(select msg='B mo V70 243')a
)a/*--结果品牌 型号 价格
------------ -------------------- -------------
mo V70 243(所影响的行数为 1 行)
--*/
,价格=stuff(msg,1,charindex(' ',msg),'')
from(
select 品牌=substring(msg,3,charindex(' ',msg,3)-3)
,msg=stuff(msg,1,charindex(' ',msg,3),'')
from(select msg='B mo V70 243')a
)a/*--结果品牌 型号 价格
------------ -------------------- -------------
mo V70 243(所影响的行数为 1 行)
--*/