postgresql - 快速找出 TSTZRANGE 列的 LOWER-bound 的 MAX
问题描述
在 Postgres 9.6 上,有没有办法在TSTZRANGE
col 上优化以下查询?
SELECT MAX(LOWER(date_range)) FROM tbl;
在 26M 行的表上大约需要 5 秒。
我试过添加一个表达式索引:
CREATE INDEX tbl_expr_idx ON tbl((LOWER(date_range)) timestamptz_ops);
但这似乎并没有被使用:
Aggregate (cost=775505.00..775505.01 rows=1 width=8)
-> Seq Scan on tbl (cost=0.00..644984.00 rows=26104200 width=22)
解决方案
推荐阅读
- python - 如何删除二维数组索引中的元素。它给出了一个参数错误
- c - 如何使用 Accept() 进行多个连接
- python - 带有模板 MRI 的 Tkinter 和 EEG 前向运算符
- css - 如何调整 Shiny Dashboard 的尺寸以适应不同的屏幕尺寸?
- android-studio - ProgressBar(progressDrawable) 显示错误值
- python - 如何通过python从文件路径中提取子路径?
- android - 即时应用程序“减速带”窗口。是否可以定制?
- javascript - 如何使可滚动的 div 的高度动态化?
- python - 使用 PyAudio 录制音频时出现异常幅度
- python - ROC 曲线和 AUC