【发布时间】:2018-06-20 15:47:53
【问题描述】:
我是 SQL 连接的新手,所以请耐心等待,我要做的是列出每个学生每周的学生考试成绩。我的查询是,
SELECT
agg.Week,
meta.Category,
agg.Student,
meta.Funding,
agg.Test_Results,
agg.Test_Points,
phy.Test_Results,
phy.Test_Points
FROM Agriculture agg
INNER JOIN metadata meta
ON meta.Student_ID = agg.Student_ID
INNER JOIN Physics phy
ON phy.Student_ID = agg.Student_ID
WHERE agg.Week BETWEEN '1' AND '5'
对我来说这看起来是正确的,但由于某种原因,发生的事情是 Test_Results 和 Test_Points 一遍又一遍地重复自己,我不知道如何解决它。我所说的重复是指,由于每周的分数都是相同的 120,因此学生 (9) 将获得 95 分,95 分会一遍又一遍地为同一个学生重复。我不确定是否需要将子查询添加到 INNER JOINS。
表格是:
元数据 --> (Category, Funding, Student_ID)(一对多比较表)
物理 --> (Test_Results, Test_Points, Student_ID)(多对多)
农业 -->(周、学生、Test_Results、Test_Points、Student_ID)(多对多)
再次重申,我是新加入的,所以如果您需要更多信息,请告诉我。
【问题讨论】:
标签: google-bigquery