【发布时间】:2013-05-08 10:19:41
【问题描述】:
警告我是新手,如果问题或解释有任何问题,请见谅......
我有一个表“XYZ”,其中包含附件列表 (OrigFileName) 和一个字段 UniqueAttchID,该字段也在标题表“ABC”上以记录链接,以便您可以查询哪些附件与记录相关。
我需要将所有记录的结果,其中 UniqueAttchID 在标题上相等,并将它们添加回标题“ABC”一个名为“udAttch”的字段,这是一个以 , 分隔符格式化的备注字段
这是为了绕过对我可用的报告功能的限制,因为我只能使用数据库中的实际字段而不是相关表。
当前设置:-
XYZ Table
UniqueAttchID OrigFileName
---------- -------------
18181818181 | Filename1
18181818181 | Filename2
18181818181 | Filename3
18181818182 | Filename1
ABC Table -
Description|Field2|UniqueAttchID|
test item |test |18181818181
Test item 2|test2 |18181818182
想要的结果:-
(XYZ 表将保持不变)
ABC Table -
Description|Field2|UniqueAttchID|udAttch|
test item |test |18181818181 |Filename1, Filename2, Filename3|
Test item 2|test2 |18181818182 |Filename1|
我尝试过使用 COALESCE,但这并没有为每个 UniqueAttchID 提供单独的记录,只为所有记录提供一个记录,并且 SELECT DISTINCT 仅在 OrigFileName 中生成第一条记录
然后我可以生成一个存储过程以根据需要运行并在新文件作为附件添加时更新记录。
【问题讨论】:
-
您使用的是什么数据库系统?没有执行此操作的 ISO SQL 标准方法,因此解决方案将取决于您使用的系统。
标签: sql tsql string-concatenation