![](/img/trans.png)
[英]Slow query performance in Timescale DB (PostgreSQL verion 12)
[英]Slow query performance postgresql
我有一個由兩個表組成的數據庫:corr1、corr1_2。 這兩個表各有兩列:c1 和 c2,每列包含 10 萬行數據。 數據是從正態分布中提取的整數。 數據高度相關:
問題是對於要求苛刻的查詢,查詢性能極其緩慢。 以下查詢非常慢:
SELECT COUNT(*) FROM corr1, corr1_2 WHERE corr1.c1 > 500 AND corr1_2.c2 > 570;
我根據以下內容為表創建了索引:
CREATE INDEX corr1_c1_idx ON public.corr1 USING btree (c1)
CREATE INDEX corr1_c2_idx ON public.corr1 USING btree (c2)
CREATE INDEX corr1_2_c1_idx ON public.corr1_2 USING btree (c1)
CREATE INDEX corr1_2_c2_idx ON public.corr1_2 USING btree (c2)
有沒有人知道我如何提高性能,或者這對我的電腦要求太高了嗎?
你沒有寫連接條件,所以你得到了一個交叉連接。
你沒有說平均值和標准差是什么,但似乎這兩個條件都不是很有選擇性。 所以你最終得到了幾乎 100000 乘以 100000 個結果行。
所以查詢很慢也就不足為奇了。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.