这不会产生语法错误,但它给出错误的参数错误:语法错误(缺少操作员)在查询表达式 - MS-访问
SELECT left(
[aname],
IIF(instr([aname], " ") = 0 AND instr([aname], ",") = 0,
Len(FinalForgotten.aname),
IIF(instr([aname], ",") = 0,
InStr(1,[aname]," ")-1,
InStr(1,[aname],",")-1)))
& "," &
right(
[aname],
IIF(instr([aname], " " = 0 AND instr([aname], ",") = 0,
Len(FinalForgotten.aname),
IIF(instr([aname], ",") = 0,
Len(aname)-InStr(1,[aname]," "),
Len(aname)-InStr(1,[aname],",")))))
& " " &
defense_final.middle_initial AS fullname INTO FinalForgottenWithMiddle
FROM FinalForgotten INNER JOIN defense_final ON (right(FinalForgotten.aname,
IIF(instr([aname], ",") = 0,
Len(FinalForgotten.aname)-InStr(1,FinalForgotten.[aname]," "),
Len(FinalForgotten.aname)-InStr(1,FinalForgotten.[aname],",")
)
)=defense_final.first_name) AND (left(FinalForgotten.aname,
IIF(instr([aname], ",") = 0,
InStr(1,FinalForgotten.[aname]," ")-1,
InStr(1,FinalForgotten.[aname],",")-1
)
)=defense_final.last_name);
因此增加额外的参数我现在得到语法错误“失踪) ,]或查询表达式中的项目“:
SELECT left(
[aname],
IIF(instr([aname], " ") = 0 AND instr([aname], ",") = 0,
Len(FinalForgotten.aname),
IIF(instr([aname], ",") = 0,
InStr(1,[aname]," ")-1,
InStr(1,[aname],",")-1)))
& "," &
right(
[aname],
IIF(instr([aname], " ") = 0 AND instr([aname], ",") = 0,
Len(FinalForgotten.aname),
IIF(instr([aname], ",") = 0,
Len(aname)-InStr(1,[aname]," "),
Len(aname)-InStr(1,[aname],","))))
& " " &
defense_final.middle_initial AS fullname INTO FinalForgottenWithMiddle
FROM FinalForgotten INNER JOIN defense_final ON
left(FinalForgotten.aname,
IIF(instr([aname], " ") = 0 AND instr([aname], ",") = 0,
Len(FinalForgotten.aname),
IIF(instr([aname], ",") = 0,
InStr(1,FinalForgotten.[aname]," ")-1,
InStr(1,FinalForgotten.[aname],",")-1)))
=defense_final.last_name AND
right(FinalForgotten.aname,
IIF(instr([aname], " ") = 0 AND instr([aname], ",") = 0,
Len(FinalForgotten.aname),
IIF(instr([aname], ",") = 0,
Len(FinalForgotten.aname)-InStr(1,FinalForgotten.[aname]," "),
Len(FinalForgotten.aname)-InStr(1,FinalForgotten.[aname],","))))
=defense_final.first_name;
任何解决方法?
感谢您的回复。
may I s你最好给你的表一个简短的(1个字母)别名,并更新你的问题?这会让我觉得它更具可读性。 – 2010-12-20 14:41:55
你提到“错误的参数错误”。你能指定错误吗?通常情况下,当字段拼写错误时。 – 2010-12-20 14:47:20
@iDevlop它说:“在查询表达式中使用的函数参数的错误数量”左(...“ – JohnMerlino 2010-12-20 15:08:30