为了账号安全,请及时绑定邮箱和手机立即绑定

将相关行的值组合为单个串联字符串值。

将相关行的值组合为单个串联字符串值。

狐的传说 2019-06-17 16:27:39
将相关行的值组合为单个串联字符串值。我试图聚合一些讲师的数据(以便很容易地显示一位讲师在一个学期中教授的课程),到目前为止,我已经接受了为每个讲师设置多个行。然而,如果我能把一位讲师的所有教学都排在一排,这对一些业务流程将是有益的。下面是一些示例数据(我的表中有更多的列,但是总的想法不会有太大变化。TBL教官有:    N_ID | F_Name | L_Name     001    Joe      Smith     002    Henry    Fonda     003    Lou      ReedTBL课程有:    Course_ID | N_ID | Course_Info     AAA         001    PHYS 1     AAB         001    PHYS 2     CCC         002    PHYS 12     DDD         003    PHYS 121     FFF         003    PHYS 224我想返回的是:    N_ID | First_Name | Last_Name | Course_IDs     001    Joe          Smith       AAA, AAB     002    Henry        Fonda       CCC     003    Lou          Reed        DDD, FFF我想我需要做一些事情,从tbl_guders中选择所有的N_ID,然后通过连接从tbl_Coures返回Course_ID,但是这个神奇的步骤暗示了我。有什么帮助吗?我可以通过SQL SELECT来完成这个任务吗?或者我需要使用VB吗?
查看完整描述

1 回答

?
慕莱坞森

TA贡献1810条经验 获得超4个赞

这很容易用艾伦·布朗的ConcatRelated()功能。从该网页复制函数并将其粘贴到Access标准代码模块中。

然后,此查询将返回您所要求的内容。

SELECT
    i.N_ID,
    i.F_Name,
    i.L_Name,
    ConcatRelated(
        "Course_ID",
        "tbl_Courses",
        "N_ID = '" & [N_ID] & "'"
        ) AS Course_IDs
FROM tbl_Instructors AS i;

的数据类型。N_ID在两个表中从文本到数字。如果这样做,则不需要在第三个参数中使用单引号。ConcatRelated()表情。

"N_ID = " & [N_ID]

当你需要的时候N_ID使用前导零显示,使用Format()表情。

Format(N_ID, "000")


查看完整回答
反对 回复 2019-06-17
  • 1 回答
  • 0 关注
  • 416 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信