我有一个表,其中有一列包含1到3位数字。例如:
- (342(342-9324
- (1( 234-3424
- (04(234-7744等
但我不知道如何编写查询。我使用
SUBSTRING(x, 2, 3)
其中x是列的名称,但我只得到3个数字,有人想提取括号中的数字,可以是1、2或3个数字吗?这是使用sql server完成的。此外,该表有超过500万行的电话号码
如果区号在()
内,则应该使用一些简单的字符串函数。
示例
Declare @YourTable Table ([Phone] varchar(50)) Insert Into @YourTable Values
('(342) 342-9324')
,('(1) 234-3424')
,('(04) 234-7744')
Select *
,AreaCode = replace(left(Phone,charindex(')',Phone+')')-1),'(','')
From @YourTable
退货
Phone AreaCode
(342) 342-9324 342
(1) 234-3424 1
(04) 234-7744 04