SQL选择加入帮助

Mal*_*ist 2 t-sql sql-server

我在查找这个场景的查询时遇到了问题.我想在这个查询中使用两个表,它们是这样的:

Units
  ID
  Other Data
People
  ID
  UnitID  <-- fk to Units
  Other Data
Run Code Online (Sandbox Code Playgroud)

这就是我想要做的:
我想选择链接到People表中没有行的所有单元.我怎样才能做到这一点?

ara*_*nid 8

SELECT Units.* FROM Units LEFT JOIN People ON People.UnitID = Units.ID WHERE People.ID IS NULL
Run Code Online (Sandbox Code Playgroud)

或者

SELECT Units.* FROM Units WHERE NOT EXISTS (SELECT 1 FROM People WHERE People.UnitID = Units.ID)
Run Code Online (Sandbox Code Playgroud)

甚至

SELECT Units.* FROM Units WHERE Units.ID NOT IN (SELECT UnitID FROM People)
Run Code Online (Sandbox Code Playgroud)