为了账号安全,请及时绑定邮箱和手机立即绑定

如何删除与SQLServer的内部连接?

如何删除与SQLServer的内部连接?

ITMISS 2019-07-12 16:10:44
如何删除与SQLServer的内部连接?我想删除使用INNER JOIN在……里面SQLServer 2008.但我知道这个错误:MSG 156,15级,状态1,15号线不正确的语法靠近关键字‘内部’。我的代码:DELETE FROM WorkRecord2  INNER JOIN Employee ON EmployeeRun=EmployeeNoWHERE Company = '1' AND Date = '2013-05-06'
查看完整描述

3 回答

?
守候你守候我

TA贡献1802条经验 获得超10个赞

您需要指定要从哪个表中删除,下面是一个带有别名的版本:

DELETE wFROM WorkRecord2 wINNER JOIN Employee e  ON EmployeeRun=EmployeeNoWHERE Company = '1' AND Date = '2013-05-06'


查看完整回答
反对 回复 2019-07-12
?
白衣非少年

TA贡献1155条经验 获得超0个赞

只需在DELETEFROM从哪里删除记录,因为我们必须指定要删除的表。也移除ORDER BY子句,因为在删除记录时没有什么可订购的。

因此,您的最后查询应该如下所示:

    DELETE WorkRecord2 
      FROM WorkRecord2 
INNER JOIN Employee 
        ON EmployeeRun=EmployeeNo     WHERE Company = '1' 
       AND Date = '2013-05-06';


查看完整回答
反对 回复 2019-07-12
?
ibeautiful

TA贡献1993条经验 获得超5个赞

可能这对你有帮助-

DELETE FROM dbo.WorkRecord2 
WHERE EmployeeRun IN (
    SELECT e.EmployeeNo    FROM dbo.Employee e    WHERE ...)

或者试试这个-

DELETE FROM dbo.WorkRecord2 
WHERE EXISTS(
    SELECT 1
    FROM dbo.Employee e    WHERE EmployeeRun = e.EmployeeNo        AND ....)


查看完整回答
反对 回复 2019-07-12
  • 3 回答
  • 0 关注
  • 800 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信