Bonjour à tous, j'ai la table suivante :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
CREATE TABLE `tmpdonnees` (
  `id` int(11) NOT NULL auto_increment,
  `unite` varchar(10) default '0',
  `indicateur` varchar(4) default '0',
  `colonne` char(1) default '0',
  `nombre` double default '0',
  KEY `idx3` (`indicateur`),
  KEY `idx4` (`colonne`),
  KEY `idx` (`id`),
  KEY `idx2` (`unite`,`indicateur`,`colonne`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1
J'ai plus d'un million d'enregistrements dans la base

Et j'execute la requete suivante :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
select *, sum(nombre) as somme from tmpdonnees group by unite,indicateur,colonne
et la requete mets 6 minutes à s'executer,

Quelle est la méthode ideale pour optimiser le group by ?