假设我有一个名为person的对象,它具有(id,name,address,phone_number)作为它的属性和一个名为dog的对象(ID,year_of_birth,breed)。然后我有两个名为owner的对象之间的关系。所有者具有以下属性:(owner_id,dog_id)。在SQL中没有类似属性的两个表之间选择语句?
在E-R图中,所有者将是一个连接狗和人的三角形,它们都是矩形的。我正在给这个信息,以便你了解这种关系。我的目标是列出谁是业主不是来自西班牙的狗ID。
我已经试过以下等数十种不同的组合是这样的:
select id from owner where address <> '% Spain%';
似乎没有任何工作。我一直坚持这个好几个小时。
由于“所有者”允许狗与人之间的多对多关系,您想如何处理情况在一个特定的狗*的一个或多个业主在西班牙,并且同一只狗的一个或多个业主不在西班牙?另外,'person'没有某种形式的'ID',其值被'owner'中的'owner_id'引用? –
(还有一个跟进 - 这似乎是一个坏主意,有'is_only_owner' - 不能推断,只有在'拥有'一个特定的'pet_id'行吗?这意味着如果有多行对于一个特定的'pet_id'和一些或全部有'is_only_owner'设置? –
我的不好,我已经添加了“身份证”的人我只关心每个人,如果他的位置在西班牙 – kiasy