Bonjour,

je rencontre un problème sur le projet sur lequel je travaille actuellement.
Pour simplifier, j'ai une table stockant des annonces et une table stockant des villes, dont voici la structure :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
CREATE TABLE IF NOT EXISTS `logsen_annonces_services_a_domicile` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `date` date NOT NULL,
  `user_id` int(11) NOT NULL,
  `niveau` tinyint(1) NOT NULL,
  `paiement` tinyint(1) NOT NULL,
  `etablissement_nom` varchar(200) NOT NULL,
  `etablissement_adresse` varchar(200) NOT NULL,
  `etablissement_region_id` int(11) NOT NULL,
  `etablissement_departement_id` int(11) NOT NULL,
  `etablissement_ville_id` int(11) NOT NULL,
  `etablissement_telephone` varchar(20) NOT NULL,
  `etablissement_photo` varchar(200) NOT NULL,
  `etablissement_logo` varchar(200) NOT NULL,
  `etablissement_video` varchar(200) NOT NULL,
  `etablissement_plaquette` varchar(200) NOT NULL,
  `etablissement_contact` varchar(200) NOT NULL,
  `etablissement_statut_juridique` tinyint(4) NOT NULL COMMENT 'table listes_statuts_juridiques',
  `accepte_cesu` tinyint(1) NOT NULL,
  `type_prestataire` tinyint(4) NOT NULL COMMENT 'table listes_types_prestataires',
  `type_agrement` tinyint(4) NOT NULL COMMENT 'table listes_types_agrements',
  `certification` tinyint(4) NOT NULL COMMENT 'table listes_certifications',
  `certification_custom` varchar(200) NOT NULL,
  `presentation` text NOT NULL,
  `jours_ouverture` text NOT NULL,
  `horaires` text NOT NULL,
  `promotion` text NOT NULL,
  `video_offre_speciale` varchar(250) NOT NULL,
  `telephone_hits` int(11) NOT NULL,
  `statut` tinyint(1) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=1440 ;
 
CREATE TABLE IF NOT EXISTS `logsen_geo_villes` (
  `id` int(255) NOT NULL AUTO_INCREMENT,
  `departement_id` varchar(5) NOT NULL,
  `nom` varchar(255) NOT NULL,
  `nom_originel` varchar(255) NOT NULL,
  `cp` varchar(255) NOT NULL,
  PRIMARY KEY (`id`),
  KEY `cp` (`cp`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=36828 ;
Et voici la requête qui me pose problème :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
SELECT ANNONCES.* 
FROM logsen_geo_villes VILLES, logsen_annonces_services_a_domicile ANNONCES 
WHERE ANNONCES.statut = 1 
AND ((VILLES.id = ANNONCES.etablissement_ville_id AND VILLES.cp = "76600") OR (ANNONCES.etablissement_departement_id = "76")) 
GROUP BY ANNONCES.id LIMIT 0, 10
Cette requête me retourne l'erreur suivante : Query execution was interrupted

J'ai essayé en virant soit le test sur la ville :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
SELECT ANNONCES.* 
FROM logsen_geo_villes VILLES, logsen_annonces_services_a_domicile ANNONCES 
WHERE ANNONCES.statut = 1 
AND ((VILLES.id = ANNONCES.etablissement_ville_id AND VILLES.cp = "76600")) 
GROUP BY ANNONCES.id LIMIT 0, 10
Soit le test sur le departement :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
SELECT ANNONCES.* 
FROM logsen_geo_villes VILLES, logsen_annonces_services_a_domicile ANNONCES 
WHERE ANNONCES.statut = 1 
AND ((ANNONCES.etablissement_departement_id = "76")) 
GROUP BY ANNONCES.id LIMIT 0, 10
et ces 2 requêtes fonctionnent, elle me retournent 22 et 6 résultats. Rien de faramineux donc..
Par contre ma table des villes comportent environ 36000 entrées.
Auriez-vous une idée d'où peut venir le problème ?