delete dbo.PayCondition
FROM SA_QuoMain INNER JOIN
      dbo.PayCondition ON dbo.SA_QuoMain.cPayCode = dbo.PayCondition.cPayCode
where dbo.PayCondition.cPayCode=111

解决方案 »

  1.   

    楼上给我SQL不能运行 有错误~!
      但也要谢谢你  
      

  2.   

    delete不可能实现一次从多个表中删除数据。
    例如:
    查询将从 SalesPersonQuotaHistory 表中删除行,该表基于 SalesPerson 表中所存储的本年度迄今为止的销售业绩。-- Transact-SQL extension
    USE AdventureWorks;
    GO
    DELETE FROM Sales.SalesPersonQuotaHistory 
    FROM Sales.SalesPersonQuotaHistory AS spqh
        INNER JOIN Sales.SalesPerson AS sp
        ON spqh.SalesPersonID = sp.SalesPersonID
    WHERE sp.SalesYTD > 2500000.00;
    GO建议是拥游标,或者主外键关联删除。
    USE AdventureWorks;
    GO
    DECLARE complex_cursor CURSOR FOR
        SELECT a.EmployeeID
        FROM HumanResources.EmployeePayHistory AS a
        WHERE RateChangeDate <> 
             (SELECT MAX(RateChangeDate)
              FROM HumanResources.EmployeePayHistory AS b
              WHERE a.EmployeeID = b.EmployeeID) ;
    OPEN complex_cursor;
    FETCH FROM complex_cursor;
    DELETE FROM HumanResources.EmployeePayHistory
    WHERE CURRENT OF complex_cursor;
    CLOSE complex_cursor;
    DEALLOCATE complex_cursor;
    GO参考:DELETE (Transact-SQL)
      

  3.   

    设置表的主/外键关系的时候,设置级联删除(ON DELETE CASCADE)
      

  4.   

    delete, update, insert 只能单表操作。