2017-03-16 63 views
-3

我在克服这个错误方面遇到了一些麻烦。当我完整地执行SELECT语句时,会显示一条重复的消息。为什么我的SELECT语句显示重复记录?

的代码是:

SELECT students.first_name, last_name ,entries.subject_id, subject_name, level_of_entry 
FROM students, subjects , entries 
WHERE subjects.subject_id=entries.subject_id 
AND students.student_id=entries.student_id 
AND exam_board='ocr'; 

This is what happens after that code is processed

These are the tables which the data is coming from

有没有办法停止复制或删除重复的行吗?

复制的行是第6和第7行;一个与Zeynnata Rein。

感谢您的帮助!

PS:对不起,物理学

+0

请更新您的问题,并添加,而不是IMG的文字..所以谁想要回答避免键入代码.. – scaisEdge

+0

代码** **必须在**的问题本身* *。 –

+0

我没有看到任何重复的记录..请exaplain更好的问题 – scaisEdge

回答

0

拼写错误,你必须通过student_id数据

+0

请你给我看看;我是一名初学者。 – Mario

0

使用组,因为你不加入它返回所有匹配组合的表。尽量明确连接:

SELECT st.first_name, st.last_name, e.subject_id, su.subject_name, su.level_of_entry 
FROM students st 
LEFT JOIN entries e 
ON st.student_id = e.student_id 
LEFT JOIN subjects su 
ON e.subject_id = su.subject_id 
WHERE su.exam_board = 'ocr'; 
+0

好吧,我会尝试 – Mario

+0

这没有奏效。另一个错误出现 – Mario

+0

错误是什么? –