Sql access中多值字段的计算查询

Sql access中多值字段的计算查询,sql,select,ms-access-2010,Sql,Select,Ms Access 2010,我有一个表“Contacts”,它有一个多值字段“Department”。我有另一个表“拓展”,它有一个字段“合作伙伴组织”。我有一个查询,它将“Contacts.Department”和“extraction.[partner org]”合并到一个字段中,使用两个表中常见的外部全名连接字段将两个表连接在一起。 我必须组合这两个字段的SQL语句是 Contacts.Department & ";" & Outreach.[Partner Org] AS [Dept/Partner

我有一个表“Contacts”,它有一个多值字段“Department”。我有另一个表“拓展”,它有一个字段“合作伙伴组织”。我有一个查询,它将“Contacts.Department”和“extraction.[partner org]”合并到一个字段中,使用两个表中常见的外部全名连接字段将两个表连接在一起。 我必须组合这两个字段的SQL语句是

Contacts.Department & ";" & Outreach.[Partner Org] AS [Dept/Partner Org]
如果我运行这个查询,我得到的错误是

The multivalued field 'Contacts.Department' is not valid in the expression 'Contacts.Department & " " & Outreach.[Partner Org] AS [Dept/Partner Org]'
如果将“.Value”添加到多值字段,则会得到多行

Contacts.Department.Value & " " & Outreach.[Partner Org] AS [Dept/Partner Org]
我希望输出的多值字段内容后跟一个“;”和合作伙伴组织名称都在同一单元格中

有人能告诉我怎么得到这个吗


谢谢。

我在这些有用(从最终用户的角度)但令人恼火(从分析的角度)的字段中遇到了类似的问题

我想出了一个解决方法,使用一个表单,我认为它解决了您的问题。我在表中添加了一个伪departments文本字段,在相关字段“AfterUpdate”事件发生变化时(我传递当前记录&SQL字符串仅汇总该记录)应用了从中稍微修改的代码

要初始化pseudo departments字段,可以逐个循环遍历所有记录以生成内容。然后可以正常查询数据,并以您指定的形式获得结果

Dim db As Database, _
rst As Recordset, _
strSQL As String

Me.Refresh

Set db = CurrentDb
strSQL = "Select PseudoDepartment from YOURTABLE where UNIQUEIDNO = " & Me.UNIQUEIDNO & ";"
Set rst = db.OpenRecordset(strSQL, dbOpenDynaset)

With rst
    If .RecordCount > 0 Then
        .MoveFirst
        .Edit
        !PseudoDepartment = MakeList(Me.UNIQUEIDNO)
        .Update
    End If
End With