SQL重复计算

时间:2018-01-15 23:13:35

标签: sql

所以我正在处理具有前提ID和订户ID的数据。

每个房屋ID代表一个房屋,而用户ID代表从该房屋购买的个人。

因此,我们可以将Premise ID = 1附加3个订阅者ID。

我是SQL的新手,我真的很想弄清楚前提级别与订阅者级别,特别是在加入时。

我实际上并没有特定的问题,但是想知道是否有人可以在尝试提取特定数据时遇到问题时如何考虑这个问题。

1 个答案:

答案 0 :(得分:2)

每个前提=男人。每个订户=儿童。 所以,1个男人可以有多个孩子,但每个孩子只能有1个孩子。

他们是如何相关的?每个孩子都有一个父亲(前提)。

因此,多个孩子可以拥有相同的父亲(男性),但每个孩子只能拥有1个父亲。每个父亲(男人)都可以有多个孩子。

所以,假设你在一个有数百名男人和数千名儿童的大游乐场。您想知道哪个孩子(订阅者)与特定的人(前提)有关。

所以,你在操场上搜索并问:哪个孩子有一个特定的男人Id:

SELECT * FROM subscriber WHERE premise_id = 1

或者您可以将它们链接在一起:

SELECT * FROM subscriber INNER JOIN premise ON premise.id = subscriber.premise_id

您可以通过以下方式获得相同的效果:

SELECT * FROM premise LEFT JOIN subscriber ON subscriber.premise_id = premise.id

这更有意义吗?