MySQL中数据库视图的更新频率是多少?

7 mysql database view

假设我在MySQL中有一个视图:

CREATE VIEW blah AS
  SELECT columnA FROM tableA
Run Code Online (Sandbox Code Playgroud)

这个视图多久从基础表tableA更新?

der*_*ert 10

即刻.视图不是作为数据的单独副本存在,而是作为重写查询的指令存在.

也就是说,当你select columnA from blah,MySQL内部重写为select columnA from tableA.

在支持物化视图的系统中,数据库负责使其保持最新.

(请注意,当查询足够复杂时,MySQL将在内部实现视图,仅用于查询的持续时间.这是一个实现细节,最好被认为是MySQL查询优化器中的缺陷.EXPLAIN可用于查看何时发生 -但你很可能会注意到可怕的表现.)