2013-07-01 47 views
0

我试图根据用户名将多个记录的字段“dbo_race.racedesc”连接成一条记录。我试图使用ConcatRelated函数(http://allenbrowne.com/func-concat.html)。由于用户名是文本,我按照文章的示例添加了额外的引号。使用ConcatRelated函数的Access查询中的方括号

我得到的错误是“错误3126:名称的无效包围[dbo_indrace.username]'。”

该错误似乎是指括号内的句号。但是,如果我只列出没有表名的字段,系统会提示它可以引用我的FROM子句中列出的多个表。

什么是ConcatRelated函数的正确语法?

SELECT DISTINCT dbo_ind.username, 
ConcatRelated("[racedesc]", "[dbo_race]", "[dbo_indrace.username] = """ & [dbo_ind.username] & """") AS racedescription 
FROM dbo_race INNER JOIN (dbo_ind INNER JOIN dbo_indrace ON dbo_ind.username = dbo_indrace.username) ON dbo_race.race = dbo_indrace.race 
WHERE dbo_race.lang='E'; 
+0

没有给出同样的错误,如果你这样做“[dbo_indrace。用户名=“”“而不是”[dbo_indrace.username]“ – Scotch

+0

没有括号或用[dbo_indrace] .username或[dbo_indrace]。[用户名],我得到”错误3061:太少参数。 – Chris

回答

0

尝试改变[dbo_indrace.username]至[dbo_indrace]。[用户名]

同样的,[dbo_ind.username]

+0

没有括号或[dbo_indrace] .username或[dbo_indrace]。[用户名],我得到“错误3061:参数太少。预期为1. – Chris

+0

这通常意味着你正试图查询一个表或字段,请检查您的拼写并确保数值格式正确 – Sev09

+0

会做,谢谢。 – Chris