SQL nvarchar格式化

时间:2017-10-02 17:55:19

标签: sql format nvarchar

所以我有一个数据类型nvarchar,这是一个电话号码,目前格式为(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. 我不能让它工作,如果你知道任何事情,请告诉我。

1 个答案:

答案 0 :(得分:0)

只需使用replace()

select replace(replace(replace(PhoneNumber, '-', ''), ')', ''), '(', '')

您无法将包含'(' s,')''-'的字符串转换为数字。