postgresql COUNT(DISTINCT ...)非常慢

编程入门 行业动态 更新时间:2024-10-27 13:22:58
本文介绍了postgresql COUNT(DISTINCT ...)非常慢的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

我有一个非常简单的SQL查询:

I have a very simple SQL query:

SELECT COUNT(DISTINCT x) FROM table;

我的表有大约150万行。这个查询运行得很慢;它需要大约7.5s,相比

My table has about 1.5 million rows. This query is running pretty slowly; it takes about 7.5s, compared to

SELECT COUNT(x) FROM table;

大约需要435ms。有什么方法可以改变我的查询来提高性能吗?我试过分组和做一个常规计数,以及在x上放一个索引;

which takes about 435ms. Is there any way to change my query to improve performance? I've tried grouping and doing a regular count, as well as putting an index on x; both have the same 7.5s execution time.

推荐答案

您可以使用:

SELECT COUNT(*) FROM (SELECT DISTINCT column_name FROM table_name) AS temp;

这比:

COUNT(DISTINCT column_name)

更多推荐

postgresql COUNT(DISTINCT ...)非常慢

本文发布于:2023-10-15 12:13:25,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1494302.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:postgresql   COUNT   DISTINCT

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!