如果记录不存在,我如何比较表格并显示?

时间:2016-01-14 05:12:01

标签: php mysql

我有一个问题,我想比较两个表是学生投票和学生。 Image of my data structures

我想要显示' idno'该学生的#39;表格' studentvotes'但我会把它建立在' syearid'上。例如,' idno'喜欢' c23'然后在2015年投票。但是在2016年没有被投票的' idno'将显示' c23'没有投票支持2016年。我怎么能这样做?

以下是一些细节:我可以显示已经按年度投票的人员,但我不知道如何展示那年没有投票的学生,这只是我现在的问题。< / p>

这就是我所做的:

 $stud = mysql_query("select * from student,studentvotes where student.idno = studenvotes.idno AND student.syearid = studentvotes.syearid AND studentvotes.syearid = '$no'") or die(mysql_error());

2 个答案:

答案 0 :(得分:0)

根据syearid过滤数据,并使用student votes

放弃not in clause中不存在的记录
select st.* from students st 
where st.idno not in (select  idno  from studentvotes  where syearid=2015 ) and st.syearid=2015

答案 1 :(得分:0)

尝试这样的事情。我认为这应该有效:

SELECT st.*
FROM student st
LEFT JOIN studentvotes sv 
    ON st.idno = sv.idno AND st.syearid = sv.syearid
WHERE sv.idno IS NULL