我在访问数据库中有一些格式很差的旧数据。有一个包含混合数据的packSize列。有时它会说“2 pack”,有时是“4 pk”,有时是“3”等。我想要做的是运行SQL命令删除所有文本并只留下数字。我该怎么办呢?
答案 0 :(得分:2)
如果字段始终以数值开头,VAL
命令可以工作,但情况可能并非总是如此。样品用法:
UPDATE Table SET field = Val(field)
如果要从字符串/字段中删除所有非数字值,这是我过去使用的方法(直接来自Microsoft):
Function RemoveAlphas (ByVal AlphaNum as Variant)
Dim Clean As String
Dim Pos, A_Char$
Pos = 1
If IsNull(AlphaNum) Then Exit Function
For Pos = 1 To Len(AlphaNum)
A_Char$ = Mid(AlphaNum, Pos, 1)
If A_Char$ >= "0" And A_Char$ <= "9" Then
Clean$ = Clean$ + A_Char$
End If
Next Pos
RemoveAlphas = Clean$
End Function
和
如何在更新查询中使用RemoveAlphas()函数
根据包含电话号码字段的表格创建新查询。 将电话号码字段放在查询网格的第一列中。上 在“查询”菜单中单击“更新”在“更新到”行中,输入 以下是名为Phone的字段:RemoveAlphas([Phone])运行 查询。