SQL nvarchar 格式化
SQL nvarchar Formatting
所以我有一个数据类型 nvarchar,它是一个 Phone 数字,它目前的格式是 (123)456-7891,但我希望它是 1234567891 没有括号或任何东西。有些数字前面有单词,比如 ABC(123)456-7891 << 这种格式所以它是一个允许数字和字母的 nvarchar 但我希望数字的格式没有任何特殊单词 ()-- 我怎么能转换它我试过了。
FORMAT(cast( PhoneNumber as numeric),'##########') as PhoneNumber
它正确地保存了程序,但是当我尝试执行它时它说 Error converting data type nvarchar to numeric
我只试过 FORMAT(PhoneNumber,'##########
),
但它说 Argument data type nvarchar is invalid for argument 1 of format function.
我无法让它工作,如果您对此有任何了解,请告诉我。
只需使用replace()
:
select replace(replace(replace(PhoneNumber, '-', ''), ')', ''), '(', '')
您不能将包含 '('
、')'
和 '-'
的字符串转换为数字。
所以我有一个数据类型 nvarchar,它是一个 Phone 数字,它目前的格式是 (123)456-7891,但我希望它是 1234567891 没有括号或任何东西。有些数字前面有单词,比如 ABC(123)456-7891 << 这种格式所以它是一个允许数字和字母的 nvarchar 但我希望数字的格式没有任何特殊单词 ()-- 我怎么能转换它我试过了。
FORMAT(cast( PhoneNumber as numeric),'##########') as PhoneNumber
它正确地保存了程序,但是当我尝试执行它时它说 Error converting data type nvarchar to numeric
我只试过 FORMAT(PhoneNumber,'##########
),
但它说 Argument data type nvarchar is invalid for argument 1 of format function.
我无法让它工作,如果您对此有任何了解,请告诉我。
只需使用replace()
:
select replace(replace(replace(PhoneNumber, '-', ''), ')', ''), '(', '')
您不能将包含 '('
、')'
和 '-'
的字符串转换为数字。