如何使用外键删除记录

时间:2019-07-18 14:42:25

标签: tsql

我想从QryCriteria中删除所有记录,其中CfgQryCriteriaId是CfgQryCriteria中的CfgQryCriteriaId 条件='PolicyAdministration.MDSL.Terms.LockInDate'

以下是我到目前为止所能提供的帮助。

 BEGIN TRY
 BEGIN TRANSACTION CFG 
     DELETE FROM QryCriteria 

     WHERE CfgQryCriteriaId  = 'PolicyAdministration.MDSL.Terms.LockInDate'

 END TRY

 BEGIN CATCH
 if(@@TRANCOUNT >0)

 ROLLBACK TRANSACTION CFG 

 END CATCH

1 个答案:

答案 0 :(得分:0)

一种简单的方法是使用子查询来获取所有适当的CfgQryCriteria值:

delete from QryCriteria
  where CfgQryCriteriaId in (
    select COC.CfgQryCriteriaId from CfgQryCriteria as COC where COC.Criteria = 'PolicyAdministration.MDSL.Terms.LockInDate' );

可以使用where exists和相关子查询来构造类似的查询。第三种选择是从两个表之间的inner join中删除。