繁体   English   中英

在MySQL中优化SELECT DISTINCT CONCAT查询

[英]Optimize SELECT DISTINCT CONCAT query in MySQL

我正在运行此查询:

SELECT DISTINCT CONCAT(ALFA_CLAVE, FECHA_NACI) FROM listado GROUP BY ALFA_CLAVE HAVING count(CONCAT(ALFA_CLAVE, FECHA_NACI)) > 1

有什么方法可以优化它吗? 在包含850,000行的表上,查询要花费2-3个小时。

将索引添加到ALFA_CLAVE和FECHA_NACI是否可行?

mysql没有功能 / 表达式索引功能,它不能在功能/表达式上放置索引。

尝试这种方式,即稍后连接它们:

select concat(x.alfa_clave, x.fecha_naci) 
from
(
    SELECT ALFA_CLAVE, FECHA_NACI 
    FROM listado 
    GROUP ALFA_CLAVE, FECHA_NACI 
    HAVING COUNT(*) > 1
) as x 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM