在Access中重新格式化电话号码

时间:2014-11-12 19:02:46

标签: sql ms-access

我正在将数据上传到访问数据库,有些数据的电话号码列在9999999999格式,其他数据列为999-999-9999。我希望所有数字都能读9999999999,以便它们可以交叉引用。我一直在尝试对不需要的格式的数字运行更新查询,但我没有成功。打击是我设置查询的方式:

 Field: Wireless Number
 Table: Table to be updated
 Update to: Mid([Table].[Wireless Number],2,3)+Mid([Table].[Wireless Number],7,3)+Right([Table].[Wireless Number],4)
 Criteria: Not Like "**********"

显然,我不确定如何解决这个问题,因此设置是在黑暗中拍摄的。获得我需要的格式的最佳方法是什么?

1 个答案:

答案 0 :(得分:1)

此SQL函数应该有效,用您的字段名称替换[wireless num]

test: IIf(Mid([wireless num],4,1)="-",Left([wireless num],3) & Mid([wireless num],5,3) & Right([wireless num],4),[Wireless Num])

如果第4个字符是 - ,那意味着它是不受欢迎的。在这种情况下,它会将电话号码的每个部分提取为子字符串,将它们连接起来,并将它们显示为一个字符串。

如果第4个字符不是-,我们可以假设电话号码是所需的格式。


这也应该有效:

Replace([wireless num],"-","")

它在Wireless Num字段中搜索-,并将其替换为零长度字符串。