MSSql(Compact)DELETE-Query with JOIN

Gep*_*pro 5 sql left-join sql-server-ce sql-delete

我有这个问题.我想从AgentsResultLinks-Table中删除所有实体,这些实体没有指向Results-Table中实体的链接.我想要一个单一查询的解决方案.我收到了'*'引起的错误.

DELETE AgentResultLinks.*
FROM AgentResultLinks LEFT JOIN Results 
ON AgentResultLinks.ResultID = Results.ID
WHERE Results.ID IS NULL
Run Code Online (Sandbox Code Playgroud)

有人可以帮助我在紧凑型数据库的vaid mssql查询中转换此查询吗?表演非常重要.

him*_*056 9

只是删除.*AgentResultLinks.*

DELETE Agent
FROM AgentResultLinks Agent 
LEFT JOIN Results R
       ON Agent.ResultID = R.ID
WHERE R.ID IS NULL;
Run Code Online (Sandbox Code Playgroud)

请参见DELETE语法:DELETE(Transact-SQL)

请参见SQLFiddle示例

  • [此链接解释了为什么您无法更新(或删除可能)在SQL Server CE上已加入的表的答案.](http://stackoverflow.com/a/6934448/491243) (4认同)

jai*_*444 4

DELETE FROM AgentResultLinks 
where ResultID not in(select distinct ID from Results)
Run Code Online (Sandbox Code Playgroud)