当前位置: 首页 > 面试题库 >

将其中具有多个值的多行连接到MS Access中的单行

司马羽
2023-03-14
问题内容

我正在尝试创建简单的需求管理数据库。基本上我有2张桌子,如下所示:

具有2列的Contract_requirements:

CR_ReqID    |   Description
reqCR1      |   Contract req description 1
reqCR2      |   Contract req description 2

SW_requirements

Title               |   SW_ReqID     |  RootReq
SW req description 1|   reqSW1       |   reqCR1, reqCR2
SW req description 2|   reqSW2       |   reqCR1
SW req description 3|   reqSW3       |   reqCR2

我想编写查询来接收这样的表:

CR_ReqID  |Description                  |where used?
reqCR1    |Contract req description 1   |reqSW1, reqSW2  
reqCR2    |Contract req description 2   |reqSW1, reqSW3

表“合同要求”和“软件要求”通过“ RootReq”列关联

香港专业教育学院试图实现艾伦·布朗的代码 http://allenbrowne.com/func-
concat.html#Top

这是我的查询

SELECT Contract_requirements.CR_ReqID, ConcatRelated("SW_ReqID     ","SW_requirements","RootReq = """ & [CR_ReqID] & """") AS Expr1
FROM Contract_requirements;

但我在Access中遇到错误

“错误3831:不能在WHERE或HAVING子句中使用多值字段’RootReq’”

你们能帮我使这个工作吗?提前致谢


问题答案:

建立一个查询,将多值字段元素扩展到单个记录。

查询1

SELECT SW_Requirements.Title, SW_Requirements.SW_ReqID, SW_Requirements.RootReq.Value 
FROM SW_Requirements;

然后将该查询用作ConcatRelated()函数的源。

SELECT Contract_Requirements.*, 
ConcatRelated("SW_ReqID","Query1","[SW_Requirements.RootReq.Value]='" & [CR_ReqID] & "'") AS WhereUsed
FROM Contract_Requirements;

建议不要在命名约定中使用空格或标点符号/特殊字符。



 类似资料:
  • 问题内容: 如何使用SQLAlchemy连接到MS Access?在他们的网站上,它说连接字符串是access + pyodbc。这是否意味着我需要连接pyodbc?由于我是新手,请保持温柔。 问题答案: 从理论上讲,这将通过create_engine(“ access:/// some_odbc_dsn”)进行,但是自从SQLAlchemy 0.5以来,Access后端就一直没有使用过,并且尚不

  • 我正在尝试更新一个名为< code>incode_warrants的表,并将< code>warn_docket_no设置为< code>incode_violations表中的< code>viol_docket_no。 我在Postgres 9.3中有以下SQL查询,但当它触发时,我得到以下错误: 我更像是一个主动记录的人,所以我的原始SQL技能严重不足。我想知道是否有人可以帮助我指出正确的方

  • 它重复显示每个房间类型的酒店名称匹配该酒店id,但我想显示所有房间类型的酒店名称一次。我怎样才能做到这一点? 谢谢。

  • 问题内容: 我使用Python Requests库下载一个大文件,例如: 大文件的下载速度为每秒+-30 Kb,这有点慢。与bigfile服务器的每个连接都受到限制,因此我想建立多个连接。 有没有一种方法可以同时建立多个连接来下载一个文件? 问题答案: 您可以使用HTTP标头仅获取文件的一部分(此处已涵盖python)。 只需启动几个线程,并获取每个线程的不同范围,就可以完成;) 还要注意,并非每

  • 试图确定是否可以创建一个连接表的查询,表一比表二小,表二有多个匹配表一条目的引用,查询将输出一个连接,其中表一的长度保留,但您只需添加更多列。我不确定这是否有意义,所以这里是我想要的一个例子 更新!! 保持原来的查询并使用PHP处理结果,也获得了很好的性能。让我知道如果你需要我张贴我的代码。

  • 问题内容: 可以构造SQL来连接多行中的列值吗? 以下是一个示例: 表A 表B SQL的输出应为- 因此,基本上,输出表的Desc列是表B的SEQ值的串联? 对SQL有帮助吗? 问题答案: 有几种方法取决于您使用的版本-请参见有关字符串聚合技术的oracle文档。一种很常见的用法是: 然后加入以挑选您想要的。 注意: 开箱即用,仅适用于列。