SQL-生成“不匹配”记录的计数

时间:2018-08-14 02:10:04

标签: postgresql apache-spark-sql metabase

我现在正在尝试使用Metabase v0.29提出问题。假设我有三个表,并想产生一个如下所示的输出表。

表1-职位/学生ID(job_student_ids)

Job ID   Student ID
J101     S101
J101     S102
J102     S101

表2-工作项目(job_items)

Job ID   Job Item
J101     Apple
J101     Orange
J102     Apple
J102     Banana

表3-学生项目(学生项目)

Student ID   Student Item
S101         Apple
S101         Orange
S102         Pear
S102         Orange
S103         Apple
S103         Orange

输出表-项目匹配

Job Item   Student Item Match
Apple      3
Orange     2
Banana     1

示例说明-如何计算 Apple

请注意,J101和J102都请求 Apple (如表2所示),J101有申请人S101和S102(如表1所示),而J102只有申请人S101。

J101:来自拥有Sem的申请人S101的一个匹配项,也来自具有苹果em的申请人S102的另一个匹配项(如表3所示)。因此,有2个 Apple 匹配。

J102:申请人S101中有一个 Apple 的比赛。

因此, Apple 总共有3个匹配项。

请注意:由于我们数据库中表1-3的实际大小,因此不可能将所有这些表附加/合并在一起以进行计数。

有没有有效的方法来实现这一目标?预先感谢-这是我第一次在这里发布问题,因此,如果您需要任何澄清,请告诉我。

0 个答案:

没有答案