sql 服务器:使用合并检查字符是否存在并替换它
sql server: using coalesce to check if character exists and replace it
如何使用 coalesce
检查变量 (@var
) 是否为“,”,如果是,则将其替换为“”(空字符串)?
类似于以下内容的反面:
coalese(',','')
所以如果 @var = ','
那么我想要 @var = ''
但是如果 @var = 'a,b'
那么我不想改变它 -> @var = 'a,b'
Coalesce 专门用于处理 NULL.. 可以使用替换功能吗?
replace(field,',','')
https://docs.microsoft.com/en-us/sql/t-sql/functions/replace-transact-sql
对于更具体的内容,您可以使用案例:
case when field = ',' then '' else field end
https://docs.microsoft.com/en-us/sql/t-sql/language-elements/case-transact-sql
对于一个变量:
set @var = case when @var = ',' then '' else @var end
合并仅用于检查空值。
您可以为此使用 case 语句:
select case when col_name=',' then '' else col_name end as col_name
如何使用 coalesce
检查变量 (@var
) 是否为“,”,如果是,则将其替换为“”(空字符串)?
类似于以下内容的反面:
coalese(',','')
所以如果 @var = ','
那么我想要 @var = ''
但是如果 @var = 'a,b'
那么我不想改变它 -> @var = 'a,b'
Coalesce 专门用于处理 NULL.. 可以使用替换功能吗?
replace(field,',','')
https://docs.microsoft.com/en-us/sql/t-sql/functions/replace-transact-sql
对于更具体的内容,您可以使用案例:
case when field = ',' then '' else field end
https://docs.microsoft.com/en-us/sql/t-sql/language-elements/case-transact-sql
对于一个变量:
set @var = case when @var = ',' then '' else @var end
合并仅用于检查空值。
您可以为此使用 case 语句:
select case when col_name=',' then '' else col_name end as col_name