小编典典

Access数据库表-拆分字段SQL命令

sql

我有一个Access 2013数据库表dbo_GOV

目标

我要使用USSenators字段,该字段包含类似(如下)的数据,并将其分别分为USSenator1和USSenator2字段:

John Smith;Sarah Levens
Bill Burr;Kevin Nill
George Thomson;Tracy Johnson

问题

我尝试了几种不同的Access SQL查询…(在执行时都在下面),给出错误消息

无效使用’。’,’!’或’()’。在查询表达式’Split(USSenators&“;”,’;’)(0’中。

我已经验证了有0条记录,其中USSenators为空白。每行列出了2个人,中间用分号隔开。


SQL查询

UPDATE dbo_GOV
SET
    USSenator1 = Split(USSenators & ";",';')(0),
    USSenator2 = Split(USSenators & ";",';')(1);

UPDATE dbo_GOV
SET
   USSenator1 = Split(USSenators,';')(0),
   USSenator2 = Split(USSenators,';')(1);

阅读 500

收藏
2021-04-14

共1个答案

小编典典

您不能在查询中使用拆分,而可以使用Mid和Instr。

Mid(USSenators,Instr(USSenators,";")+1)
Mid(USSenators,1,Instr(USSenators,";")-1)

上面的第二
行返回约翰·史密斯的第一条记录上面的第一行返回约翰·史密斯的第一条记录

您将需要注意空值。

2021-04-14