Bonjour à tous,
Les amis j'ai une table qui contient aux alentours de 25 millions de tuples et elle contiendra plus que ça au fil du temps, mais actuellement le temps de réponse est plus de 3min si je rajoute des critères de sélection.
Voici la structure de ma table et ma requête respectivement :
Structure de la table :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 SELECT (CASE WHEN (SELECT COUNT(j.JobID) FROM job j WHERE j.ParentJobID=jb.JobID )=0 THEN 0 ELSE 1 END) as ExitSousJob,jb.JobID as JobID , jb.JobID as DownFileIn , jb.JobID as DownFileOut,jb.JobID as DownFileAll , jb.ParentJobID as JobPereID , jb.StartDate as DateDebut , (CASE WHEN jb.Duration IS NULL THEN - ELSE (CASE WHEN jb.Duration 0 THEN jb.Duration/1000 ELSE jb.Duration END) END ) as Duree , Lab.Fr as Statut , (CASE WHEN jbt.LabelID IS NULL THEN jbt.Alias ELSE (SELECT Fr FROM label l WHERE l.LabelID= jbt.LabelID) END) as Type , (CASE WHEN jb.Description IS NULL THEN - ELSE jb.Description END ) as Description, st.StatusTypeID as IdStat FROM Job jb INNER JOIN jobtype jbt on jb.JobTypeID=jbt.JobTypeID INNER JOIN statustype st on st.StatusTypeID=jb.StatusTypeID LEFT JOIN label lab on lab.LabelID = st.LabelID WHERE jb.EnvID IN ( 1,40,41,22,37,25,26,39,38,42,43 ) AND jb.JobTypeID = 1 AND jb.StatusTypeID = 0 ORDER BY StartDate DESC LIMIT 500
. Avez vous solution pour améliorer le temps de réponse ? Merci d'avance
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 CREATE TABLE IF NOT EXISTS `job` ( `JobID` int(10) unsigned NOT NULL, `StartDate` datetime NOT NULL, `EndDate` datetime DEFAULT NULL, `Duration` int(10) unsigned DEFAULT NULL, `ParentJobID` int(10) unsigned DEFAULT NULL, `SessionJobID` int(10) unsigned DEFAULT NULL, `JobTypeID` smallint(5) unsigned NOT NULL, `StatusTypeID` mediumint(8) unsigned NOT NULL, `Visible` tinyint(1) NOT NULL, `EnvID` int(5) unsigned NOT NULL, `Description` text, PRIMARY KEY (`JobID`), KEY `ParentJobID` (`ParentJobID`), KEY `SessionJobID` (`SessionJobID`), KEY `JobTypeID` (`JobTypeID`), KEY `EnvID` (`EnvID`), KEY `StatusTypeID` (`StatusTypeID`), KEY `StartDate` (`StartDate`), KEY `Duration` (`Duration`) )
Partager