我有一个产品表,其所有产品的制造商ID目前为-1。
我有一个具有SKU前缀的制造商表。
因此,如果MFG sku前缀是:ABC
然后产品表将有ABC123,ABC3434等产品。
所以我需要一个查询来更新products表,根据Manufacturer表中的skuPrefix设置manufacturerID。
这可能吗?
答案 0 :(得分:2)
UPDATE tblProducts
SET P.manufacturerId = M.manufacturerId
FROM tblProducts P
JOIN tblManufacturers M ON LEFT(P.Sku, 3) = M.SkuPrefix
-- above, replace 3 with whatever the prefix length is
--WHERE possibly some where condition
以上应该可以解决问题。但是要考虑一些因素:
... (ON CHARINDEX(P.Sku, M.SkuPrefix) = 1)
答案 1 :(得分:0)
UPDATE tblProducts
SET manufacturerId = M.manufacturerId
FROM tblProducts P
JOIN tblManufacturers M ON M.Sku + '%' LIKE P.sku
应该这样做