在视图中填充新数据时,表格不会更新。查询运行时没有错误,但表未更新。我尝试使用来自视图中的数据(根据发货ID)更新表格。
INSERT INTO `table`(`store`, `shippingid`)
SELECT store,shipment_id FROM view WHERE NOT EXISTS (SELECT `shippingid` FROM `table`)
答案 0 :(得分:1)
您必须在视图和表格之间包含相关性:
INSERT INTO `table`(`store`, `shippingid`)
SELECT store,shipment_id
FROM view
WHERE NOT EXISTS (SELECT `shippingid`
FROM `table`
WHERE shippingid = view.shipment_id)
请注意,此查询是INSERT
操作,而不是UPDATE
。
答案 1 :(得分:0)
如果你的表中有任何行,这将总是错误的:
WHERE NOT EXISTS (SELECT `shippingid` FROM `table`)
似乎您可能需要添加相关性:
WHERE NOT EXISTS (SELECT `shippingid` FROM `table` WHERE shippingid = view.shipment_id)
请注意,理论上,子查询对外部查询的每一行都执行一次。因此,要了解流程..获取一些示例数据并了解查询将如何产生结果。