Ms access 具有2个或多个delimter的MS access查询

Ms access 具有2个或多个delimter的MS access查询,ms-access,ms-access-2007,Ms Access,Ms Access 2007,我试图从一列中检索数据。 我试图使用 Trim(Mid([RIC_Name],InStr([RIC_Name],"=")+1)) 这仅适用于“=”可用的情况。我想为“”做类似的事情 例如: .abcdx.fx werer=lu jhgjj.nx 输出: fx lu nx 如果使用instrev函数,这在一个表达式中是否可行 Trim(Mid([RIC_Name],InStrRev([RIC_Name],".")+1)) 您将得到问题中显示的答案,但第二个答案需要不同的分隔符(=) 根据此

我试图从一列中检索数据。 我试图使用

Trim(Mid([RIC_Name],InStr([RIC_Name],"=")+1))
这仅适用于“=”可用的情况。我想为“”做类似的事情

例如:

.abcdx.fx
werer=lu
jhgjj.nx
输出:

fx
lu
nx

如果使用
instrev
函数,这在一个表达式中是否可行

Trim(Mid([RIC_Name],InStrRev([RIC_Name],".")+1))
您将得到问题中显示的答案,但第二个答案需要不同的分隔符(=)

根据此拆分的使用情况,您可以将分隔符设置为变量并为其指定适当的分隔符。如果需要一条语句来破解两个分隔符,请尝试以下操作:

Trim(Mid[RIC_Name],iif(InStrRev([RIC_Name],".")+1<>0,InStrRev([RIC_Name],".")+1,InStrRev([RIC_Name],"=")+1)))
Trim(Mid[RIC_Name]、iif(InStrRev([RIC_Name]、“)+10、InStrRev([RIC_Name]、“)+1、InStrRev([RIC_Name]、“=”)+1)))

是否要在每次
时拆分该数据?一旦检索到该数据,您将如何处理该数据?也就是说,是否有必要在sql语句中尝试拆分?我只尝试拆分并检索单元格的最后一部分。这是在=或之后的数据(在某些情况下是第二个)。获得此数据后,我必须使用此列与其他表进行比较,并提取必填字段。我尝试使用一条语句,但出现错误“您输入的表达式包含无效语法。您可能输入的操作数没有运算符”我将您的语句更改为IIf(InStrRev([RIC_Name],“=”)+10,Trim(Mid([RIC_Name],InStr([RIC_Name]),“=”)+1)),Trim(中间([RIC_Name],InStr([RIC_Name],“)+1)),但它仅适用于“=”,下面是一个示例:X=“a=abcd=xe”:?修剪(中间(X,iif(InStrRev(X,“.”+10,InStrRev(X,“.”+1,InStrRev(X,“=”)+1)))这做的是让我们按照我写的方式优先。如果您想在一条语句中同时使用两个具有相同优先级的分隔符,那么它会变得更复杂。谢谢Perry,这很管用。。我还使用了替代方法,将所有的.s替换为class='s,然后我在问题中的第一个陈述将所有的class='s拆分。