问题标签 [junction-table]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
58 浏览

mysql - 查询表中的所有数据,仅连接联结表中的最新记录

我正在使用与此类似的数据库结构:http: //dev.mysql.com/doc/employee/en/sakila-structure.html

表:员工

包含每个员工信息的表格。

表:部门

包含公司部门信息的表格。

连接表:emp_dept

主键:[ emp_nofrom_date ]

用于跟踪员工以前工作或现在工作的部门的表格。

预期表:

¿我怎样才能只将每个员工的最新记录从联结表(emp_dept) 连接到我的员工表并获得如下表?

0 投票
2 回答
18997 浏览

database - 实体关系模型和关系模型有什么区别?

我只能找到以下两个不同之处:

  1. ER 模型中的关系是明确定义的,而它们在关系模型中是隐含的。
  2. 关系模型需要一个中间表(通常称为“联结表”)来保存实现多对多关系的两个外键。

当我们有 ER 图时,为什么我们要使用关系模型?

0 投票
2 回答
353 浏览

mysql - Where 子句在联结表中没有按预期工作?

我有一个联结表,它在其他两个表之间创建多对多关系。这是图表。

在此处输入图像描述

这是我的基本 SQL 查询。

这是一个示例结果。

这些结果基本上是我正在寻找的,尽管我尝试对无法正常工作的 URL 进行分组。如果我包含一个WHERE子句,查询也将正常工作。

但是,当我将AND运算符添加到WHERE条件时,我期待这一点。

但是,我得到:

我也尝试在其中添加条件,ONJOIN结果是一样的。请问我做错了什么?

编辑 :

此查询的目的是获取一个或多个标签以及与其关联的 URL 列表。我需要能够使用多个AND运算符来仅检索那些特定的标签。它需要像堆栈溢出一样工作,其中有一个问题(URL)和多个附加标签。

0 投票
1 回答
101 浏览

database - Access 数据库设计 - 规范化两个单独(和相关)的字段

我创建了一个数据库来存储我公司所做的设计工作的信息。主表目前有很多 Null 字段,因为有很多“可选”字段......据我了解,这是规范化的主要候选者!

我的问题更多来自对结构的理解。我会尽力解释我的问题:

在主表中,有条目(我的 PK)和一些分组选项(AY/N 和备忘录)。该文本是可选的,但仅当相关的 Y/N 设置为“是”时。一个简单的例子如下(在 Excel 中做了一个快速模型):

截图1

请记住,除了这些之外,还有更多的选项(以及更多的空值)。我想将这些规范化为 2 个新表,但结构超出了我的技能水平。理论上它看起来像这样:

截图2

这将分离出 Y/N 和文本,通过原始选项编号将两者联系起来,并摆脱我所有的空值。

不过,在结构上,我不知道如何设计一切。我想我在某个地方需要一个连接表,但是“订单和产品”的标准教程示例并不完全适合我正在尝试做的事情(或者至少,我看不到它)

另外一个问题,如果相应的“OptionA”中存在“是”,我只需要接受“OptionB”的记录。我可以使用原始表中的验证规则进行设置,但我不确定在拆分字段时是否可以使用相同的方法。

我也不知道如何为后两个表设置我的键 - “条目”和“选项”都需要能够重复,但我需要停止这两个字段的唯一组合的重复(应该只有一条记录带有“条目 1|选项 1”)

那是冗长的,我希望它是有道理的......我非常乐意提供任何进一步的澄清。

0 投票
1 回答
878 浏览

database - 连接表连接 3 个表?

我是编程和数据库的新手。目前正在从事一个涉及部门(物理、化学等)、类别(物理 -> 热、化学 -> 有机)和实际实验室项目(物理 -> 热 -> 火柴棒、化学 -> 有机 -> 己烷溶液)的库存项目)。我的数据库图应该如何看起来像这样,我可以根据部门和类别搜索项目列表,并且在添加项目时,它们被分类在正确的部门和类别下。我正在创建一个连接到部门、类别和项目详细信息(不包含 DeptID 和 CatID)表的连接表(Department-Category-Item)。

我在正确的轨道上吗??

希望有人能帮忙澄清一下。

非常感谢提前。

克里斯

0 投票
1 回答
129 浏览

sql - SQL 连接查询 - 如何获得精确匹配

我希望这个问题的答案与 DBMS 无关,但如果它是相关的,我正在使用 Access SQL。

请注意,这是我正在尝试做的简化版本。

现在,考虑我有以下三个表。

我的主要水果表(tblFruits):

将许多标签链接到 1 个水果的联结表(tblFruitTagJunc):

最后是一个标签表来标记我的水果(tblTag):

感谢这篇博文让我变得懒惰)

这实质上是说:

  1. 苹果是(红色,有光泽,美味,美味)
  2. 橙子是(橙子)
  3. 葡萄柚是(橙色,可怕)

现在说我想选择那些带有“橙色”标签的水果,而没有其他水果。有了所提供的数据,那将只是具有fruitName = 'Orange'. 我目前正在这样做:

这将在结果中返回橙色和葡萄柚,但我只想要橙色。

我以这种方式执行 SQL 语句的原因是不同类型的水果可能具有相同的名称但不同的标签,或者不同的水果可能只有一个相同的标签。

编辑:

SQLFiddle 按要求

0 投票
2 回答
1004 浏览

postgresql - 在 postgreSQL 中使用 WHERE 子句创建三个表的最有效方法是什么

我正在使用 postgreSQL 9.3。

我想说我的问题有点主观,但我没有找到任何相关的问题或文章......

我有以下三个表:

艺术家:

流派:

和连接表艺术家流派:

我想按流派名称获取所有艺术家。目前我这样做:

我想知道是否有更有效的方法来做到这一点?

0 投票
1 回答
182 浏览

mysql - 从 2 个联结表中提取数据的查询

我正在为漫画创建一个数据库。现在我有 3 个主表(comics、publishers、people)和 3 个联结表(person2comic、publisher2comic 和 person2publisher)。我希望能够有一个搜索表单,允许按标题、期号、出版商和人员的任意组合进行搜索。当只引用一个联结表时,我会根据要搜索的内容使用它的变体:

如果有人要按标题、出版商和个人搜索,我不确定如何设置语句,因为它需要使用两个联结表。是嵌套查询情况还是其他情况?

0 投票
1 回答
432 浏览

c# - 使用其他表中存在的数据更新联结表

我有这两张桌子

tr 这些都是从数据库第一个实体框架自动创建的(从 edmx 文件中的数据库更新模型)。我需要能够更新从创建的联结表

联结表只有两列 TemplateId 和 VariableID,它们都是各自表的 FK。它们需要匹配 Item 和 Variable 的名称。目前我能够完成一些(我没有从项目表中获得 ID):

编辑:我想要完成的 sql 是:

哪个工作正常,但我需要一种方法将其保存到联结表 dbo.ItemVariables

任何帮助将不胜感激。

我已经阅读了有关 msdn 和 stack 的所有文档,但我无法找到我正在寻找的答案。

0 投票
1 回答
257 浏览

c# - EF Code First Migration 坚持切换联结表名

我有一个 EF Code First 模型,其中包含一个 Foo 表和一个 Bar 表。这是一个多对多的关系,因此 EF 生成了一个名为 FooBars 的联结表:

一切都好。现在,我对模型进行了一些更改并添加了迁移。Foo 实体现在有一些额外的 string 和 int 属性,关系或任何东西都没有变化。但是,出于某种原因,EF 现在坚持应该将联结表称为 BarFoos,并希望删除原来的 FooBars 表:

显然,我可以将所有记录从 FooBars 复制到 BarFoos 中,但这很烦人,而且当我对模型进行更改并重新生成这个特定的迁移时,我需要继续做一些事情。为什么 EF 坚持认为 junction table 应该突然反其道而行之?我可以做些什么来避免这种情况吗?