考虑在 PostgreSQL 9.1(或 9.2)中执行的以下查询:
SELECT * FROM foo WHERE bar = true
假设这是一个运行时间相当长的查询(例如,需要一分钟)。
如果在查询开始时有 500 万条记录bar = true
保留,并且在另一个事务中的此查询期间,foo
表中添加和删除了行,并且对于某些现有行,对bar
字段进行了更新。
这会影响上面显示的选择查询的结果吗?
我知道单个事务中不同语句之间的事务隔离和可见性,但是正在运行的单个语句呢?