我目前有2个表,一个包含用户列表,另一个包含设备列表的“结帐”记录列表。我正在尝试构建一个报告,以显示哪些用户当前没有检查过他们的内容,但是我对如何执行此操作感到有点困惑。数据样本如下:
用户表格列:
设备列:
签出栏目:
将会有两种情况。一个用户之前从未有过设备检出过的设备,另一个用户已经检查过设备,但此时不再有设备。这就是我被困住的地方!我能够使用下面的内容来完成第一个场景,但是我很难理解如何同时检查这两个场景。
SELECT DISTINCT u.id
FROM user u
LEFT JOIN checkedout o
ON u.id = o.user
WHERE o.id IS NULL
我为WHERE语句尝试了类似的东西,但它返回了仍然有设备签出的用户的值。
WHERE o.id IS NULL OR o.checkedout != '0000-00-00'
欣赏任何想法。