Sql server 2005 SQL Delete语句(其中不在)

Sql server 2005 SQL Delete语句(其中不在),sql-server-2005,sql-delete,Sql Server 2005,Sql Delete,只有当一个表的数据不再被另一个表使用时,我如何才能删除该表中的特定行 假设我有一个[schedule]表和[scheduletype]表。如果在[schedule]表的[schedule].[type]字段中找不到特定的[scheduletype],则它将从[scheduletype]表中删除 顺便说一句,我使用的是SQL Server 2005。假设相关字段在计划中称为id,请尝试此操作: 假设相关字段在计划中被称为id,请尝试此操作: 首先,您可能应该设置一个外键约束,以确保在表逻辑相关的情

只有当一个表的数据不再被另一个表使用时,我如何才能删除该表中的特定行

假设我有一个[schedule]表和[scheduletype]表。如果在[schedule]表的[schedule].[type]字段中找不到特定的[scheduletype],则它将从[scheduletype]表中删除


顺便说一句,我使用的是SQL Server 2005。

假设相关字段在计划中称为id,请尝试此操作:


假设相关字段在计划中被称为id,请尝试此操作:


首先,您可能应该设置一个外键约束,以确保在表逻辑相关的情况下不会发生删除。请在此处阅读更多信息:

对于删除,您可以执行以下操作:

delete scheduletype 
where type not in (select type from schedule)

首先,您可能应该设置一个外键约束,以确保在表逻辑相关的情况下不会发生删除。请在此处阅读更多信息:

对于删除,您可以执行以下操作:

delete scheduletype 
where type not in (select type from schedule)

[…]如果其他表不再使用其数据?这听起来很像级联删除,您是否为子表适当地设置了外键约束?不太可能。它们是单独的桌子。现在问题解决了[…]如果其他表不再使用其数据?这听起来很像级联删除,您是否为子表适当地设置了外键约束?不太可能。它们是单独的桌子。现在问题解决了哇!太好了D谢谢你们两位Derek和@Femi.Wow!太好了D谢谢你们Derek和@Femi。