Ms access 在MS Access中分析包含空格和-的文本

Ms access 在MS Access中分析包含空格和-的文本,ms-access,Ms Access,亲爱的社区成员: 我是MS Access的新手,目前正在为客户构建一个简单的数据库,作为项目的一部分。我们以以下格式从外部来源获取数据: 客户密钥:01105837-19-9 城市/州/邮政编码:佛罗里达州利斯堡34788-3522 我需要将我们的客户密钥分为四列,以便 电话:1105 账户:105837 顾客:19 住宅:9 同样适用于城市/州/邮政 城市:利斯堡 州:佛罗里达州 邮政编码:34788-3522 我已经能够使用Left、Instr和Right函数来分离左右极端信息 公司:左([

亲爱的社区成员:

我是MS Access的新手,目前正在为客户构建一个简单的数据库,作为项目的一部分。我们以以下格式从外部来源获取数据:

客户密钥:01105837-19-9

城市/州/邮政编码:佛罗里达州利斯堡34788-3522

我需要将我们的客户密钥分为四列,以便 电话:1105

账户:105837

顾客:19

住宅:9

同样适用于城市/州/邮政 城市:利斯堡 州:佛罗里达州 邮政编码:34788-3522

我已经能够使用Left、Instr和Right函数来分离左右极端信息

公司:左([NCOA_RAW].[custkey],仪表([NCOA_RAW].[custkey],“”)1)

客户:右([ncoa_raw].[custkey],Len([ncoa_raw].[custkey])-InStr(1[ncoa_raw].[custkey],“-”)-0)

我无法解析房屋信息,因为它包含空格和-。你能告诉我,我怎样才能把这些信息分离出来吗。我们将非常感谢你的帮助

致以最良好的祝愿,
j助手

如果状态始终为2个字符,则以下操作应有效:

ZIP: Mid([city/state/zip],InStrRev([city/state/zip]," ")+1)
State: Mid([city/state/zip],InStrRev([city/state/zip]," ")-2,2)
City: Left([city/state/zip],Len([city/state/zip])-InStrRev([city/state/zip]," ")-2)

根据客户密钥的构成,您可以在那里执行类似的操作

输入的标准化程度如何?客户密钥的元素是否总是相同的长度?如果是,请查看MID函数。City/State/Zip可能更难,因为城市名称可能包含空格——为此,请查看InStrRev函数。