标题令人困惑,所以让我解释一下,我认为我需要使用三个表。
- 第一个表被调用
VendorCertifications
并且有CertID, Cert, VendorID
列。 - 第二个表是
Vendors
和有VendorID
和Vendor
列 - 第三个表是
VendorCert
和有Cert
和Company
列
我所做的是插入VendorCert
,VendorCertification
现在我有一个证书列表,CertID
现在使用身份规范填写 PK。
我想要做的是返回并使用from更新VendorCertification
表格。VendorID
Vendors
我在想我可以和Vendors
Vendor
专栏一起加入VendorCerts
Company
专栏。
然后使用 CTE 更新VendorCertification
VendorID
列。
这是我写的:
with temptable as (
select
vce.Company, v.Vendor, vce.Certification, V.VendorID
from
VendorCert as VCE
join
Vendors as V on V.Vendor = VCE.Company)
update VendorCertifications
set VendorID = temptable.VendorID
where temptable.Certification = Certification
这不起作用,我收到“无法绑定”错误,我试图弄清楚为什么它给了我这个错误,但我没有运气。我什至不确定我是否应该这样做,我想不出一种方法来使用普通的更新语句来做到这一点,因为它涉及(至少我认为它涉及)三个表。任何帮助表示赞赏。认证列表约为 300,供应商列表约为 40。