【发布时间】:2018-09-18 14:21:42
【问题描述】:
因此,在这种情况下,我们拥有的群体是动物群体。
假设我有以下表格:
animal_id | attribute_id | animal
----------------------------------
1 | 1 | dog
1 | 4 | dog
2 | 1 | cat
2 | 3 | cat
3 | 2 | fish
3 | 5 | fish
id | attribute
------------------
1 | four legs
2 | no legs
3 | feline
4 | canine
5 | aquatic
第一个表包含定义动物的属性,第二个表跟踪每个属性是什么。现在假设我们对一些数据运行查询并得到以下结果表:
attribute_id
------------
1
4
此数据将描述一只狗,因为它是唯一同时具有属性 1 和 4 的 animal_id。我希望能够基于第三个表以某种方式获取 animal_id(在本例中为 1),其中本质上是一个已经生成的包含动物属性的表。
编辑
因此,具有 1 和 4 的第三个表不必是 1 和 4。它可以返回 2 和 5(鱼)或 1 和 3(猫)。我们可以假设它的结果总是完全匹配一种动物,但我们不知道是哪一种。
【问题讨论】:
-
如果“狗”有第三个属性怎么办?它还会匹配 1 和 4 吗?
-
如果 dog 有另一个属性,我们从查询中得到的列表将包含该属性。所以如果有第三个属性,比如'attribute_id = 7',那么表就会是1,4,7