下面是我正在尝试使用的查询,
select DISTINCT c.sno from Cards as c, reservation as r
where c.name='CRS-4-FC' AND c.sno != r.ssno;
这个查询应该只从卡中选择那些在预订表中不存在的 sno,即在预订表的 ssno 列中没有 sno。我输入
c.sno!=r.ssno
这样我就不会选择所有的sno。但是当这个查询运行时,我得到了所有的 sno 而不是那些没有被保留的。有人可以帮忙解决我哪里出错了..
最佳答案
尝试
select DISTINCT c.sno
from Cards as c
left outer join reservation as r on c.sno = r.ssno
where r.ssno is null
and c.name='CRS-4-FC'
关于mysql - 查询未按预期运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11899981/