我遇到了一些奇怪的 mysql 子查询问题......
UPDATE site_plugin_products_items
SET item_distributor = 176
WHERE item_id in (
SELECT item_id
FROM `site_plugin_products_field_values`
WHERE value_val in ( 554, 1384 , 785 )
)
我的问题是:
结果查询更新了整个表 site_plugin_products_items 与 item_distributor = 176
如果我运行子查询个人:
SELECT item_id
FROM `site_plugin_products_field_values`
WHERE value_val in ( 554, 1384 , 785 )
我收到以下错误,因为我输入了错误的字段,它应该是 value_product,而不是 item_id
查询错误(1054):“字段列表”中的未知列“item_id”
为什么会这样?大查询不应该返回错误而不是弄乱整个表吗?
当我看到结果时丢失了 2 年,并且不知道我是否有关闭备份:)