执行postgres查询

时间:2019-11-22 17:38:47

标签: sql postgresql query-performance postgresql-11

我使用Postgres 11.5。 我尝试执行以下选择。

DROP TABLE IF EXISTS test;

CREATE TABLE test (
    id SERIAL PRIMARY KEY,
    version VARCHAR(10) NOT NULL,
    type VARCHAR(10) NOT NULL,
    data JSONB NOT NULL,
    publishedAt TIMESTAMP NOT NULL
);

INSERT INTO test (version, type, data, publishedAt) 
SELECT  '1.0.0', 'article', '{"tags":[{"slug":"complexes"}]}', '2019/11/11 11:11:11' 
FROM generate_series(1, 100000);

explain analyse 
SELECT id 
FROM test 
WHERE version = '1.0.0'  
  AND type = 'article' 
  AND data @> '{"tags":[{"slug":"complexes"}]}' 
ORDER BY publishedAt 
DESC LIMIT 20;

我尝试添加索引,但是选择过程至少花费了62ms。

您是否有任何想法找到一种将选择的执行时间减少到10ms以下的方法?

0 个答案:

没有答案