我在 Postgres 8.2 数据库 (Windows) 上运行此查询:
SELECT
*
FROM
(SELECT * FROM table1 tb1 WHERE date='2019-03-06' ) tb1
JOIN table2 tb2 ON
tb2.tb1_id = tb1.id
WHERE
tb2.date ='2019-03-06'
然后我收到此错误消息:
错误:关系“table1_pkey”的块 11729 中的无效页眉 SQL 状态:XX001
但是,当我添加Order By
子句时,此查询运行良好。
SELECT
*
FROM
(SELECT * FROM table1 tb1 WHERE date='2019-03-06' ORDER BY id) tb1
JOIN table2 tb2 ON
tb2.tb1_id = tb1.id
WHERE
tb2.date = '2019-03-06'
AFAIK,错误“块 xxx 中的无效页眉”主要是因为内存或驱动器损坏(链接:Postgres Database Error Invalid Page Header)。
Order By
但是,当我添加子句时它怎么能运行?