求优化解决方案

有一个表table t1(a CHAR(22)  NOT NULL,b INTEGER NOT NULL,        c char(1))这个表有5000多万的数据,我运行select a,b,count(*) from t1group by 1,2having count(*)>1这个语句24个小时都没有出来(AIX服务器上)大家有什么办法...显示全部
有一个表
table t1
(a CHAR(22)  NOT NULL,
b INTEGER NOT NULL,        
c char(1)
)
这个表有5000多万的数据,
我运行
select a,b,count(*) from t1
group by 1,2
having count(*)>1
这个语句24个小时都没有出来(AIX服务器上)
大家有什么办法提高它的效率吗
或者换办法得到想要的结果收起
参与14

查看其它 13 个回答villager的回答

villagervillager软件开发工程师中国建设银行
我用mysql验证下貌似 group by 快多了,数据量300多万条。

建索引用的时间,Query OK, 3694661 rows affected (3 min 31.04 sec)
Records: 3694661  Duplicates: 0  Warnings: 0
select 时间:
mysql> select phone,count(*) from phonelist
    -> group by 1
    -> having count(*) > 1;
Empty set (8.83 sec)
互联网服务 · 2011-11-05
浏览630

回答者

villager
软件开发工程师中国建设银行

villager 最近回答过的问题

回答状态

  • 发布时间:2011-11-05
  • 关注会员:0 人
  • 回答浏览:630
  • X社区推广