我有一个架构非常糟糕的数据库,没有人想要修复任何东西,我必须使用我拥有的东西。所以问题出在屏幕上
我需要更新用户连接以及更多字段......我看到的解决方案是SET ... WHERE AND SET .. WHERE AND SET ... WHERE
(是的,在这一点上我什至不确定它是否会起作用)。那么可能有更常见的方法来解决这个问题吗?
我有一个架构非常糟糕的数据库,没有人想要修复任何东西,我必须使用我拥有的东西。所以问题出在屏幕上
我需要更新用户连接以及更多字段......我看到的解决方案是SET ... WHERE AND SET .. WHERE AND SET ... WHERE
(是的,在这一点上我什至不确定它是否会起作用)。那么可能有更常见的方法来解决这个问题吗?
只要您的价值观是不同的记录,我认为您将需要进行个别更新。
你也可以考虑这样的事情:
UPDATE categories
SET display_order = CASE id
WHEN 1 THEN 3
WHEN 2 THEN 4
WHEN 3 THEN 5
END,
title = CASE id
WHEN 1 THEN 'New Title 1'
WHEN 2 THEN 'New Title 2'
WHEN 3 THEN 'New Title 3'
END
WHERE id IN (1,2,3)
是否有特殊原因为什么您应该在一个查询中更新所有字段。为什么不尝试编写单个更新查询并将其作为批处理推送到数据库。