【发布时间】:2016-12-31 12:23:10
【问题描述】:
我有一张包含很多记录的表(可能超过 500 000 或 1 000 000)。 我想在整个数据库的所有表中更新一些具有相同字段名称的公共列。
我知道将单独的查询写入单个表的传统方法,但不知道一个查询来更新所有表的所有记录。
在不使用某些特定方言的特性的情况下,在 SQL 中执行此操作的最有效方法是什么,因此它适用于任何地方(Oracle、MSSQL、MySQL、Postgres 等)?
附加信息:没有计算字段。有索引。使用生成的 SQL 语句逐行更新表。
【问题讨论】:
-
这是一件奇怪的事情。
-
SELECT SUM(TABLE_ROWS) FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA = '{your_db}'; 这是遍历数据库中所有表的方式。我尝试过同样的方法。可能是我错过了什么。
标签: php mysql database performance