具有左连接和分组的SQL Server Update

Mar*_*uth 4 sql t-sql sql-server sql-update

我正在更新我们的数据库,并希望更新另一个表中没有现有项目的行.我可以将这些表连接在一起,但是在分组表时遇到问题需要计算行数

UPDATE dpt
SET dpt.active = 0 
FROM DEPARTMENT dpt
LEFT JOIN DOCUMENTS doc on dpt.ID = doc.DepartmentID
GROUP BY dpt.ID
HAVING COUNT(doc.ID) = 0
Run Code Online (Sandbox Code Playgroud)

我该怎么办?

OMG*_*ies 5

使用:

UPDATE DEPARTMENT
   SET active = 0 
 WHERE NOT EXISTS(SELECT NULL 
                    FROM DOCUMENTS doc
                   WHERE doc.departmentid = id)
Run Code Online (Sandbox Code Playgroud)