>我从Salesforce带来了我的数据。有一个用于案例的主表,它引用了"客户"表和"联系人"表。"客户"表和"联系人"表是合规的。"事例"表的"客户"和"联系人"表都有问题。我想清理两者之间的匹配数据并删除其余数据以创建完整性。我在下面使用了哪些匹配项。但是,我想知道什么不匹配,以及我是否有可以通过其他路由匹配它们的 ID。
有没有另一个语句可以用于不等于的东西?
SELECT Contact.AccountId AS Contact, Account.Id AS Account, [Case].ContactId AS [Case]
FROM Account
INNER JOIN [Case] ON Account.Id = [Case].AccountId
INNER JOIN
Contact ON Account.Id = Contact.AccountId AND [Case].ContactId = Contact.Id AND Account.Id = Contact.AccountId
最终,我想创建从案例到客户和联系人的FK关系。
你应该做一个左连接并检查空值,或者使用 not exists(( 查询:
SELECT Contact.AccountId AS Contact, Account.Id AS Account, [Case].ContactId AS [Case]
FROM Account
left JOIN [Case] ON Account.Id = [Case].AccountId
where case.accountid is null
或
SELECT Contact.AccountId AS Contact, Account.Id AS Account, [Case].ContactId AS
[Case]
FROM Account
where not exists(elect * from case where case.accountid=account.id)