Merci pour ces précieux conseils.
Par rapport à votre proposition de requête si j’exécute :
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 43 44 45 46 47 48 49 50 51 52 53
| SELECT tr.id
FROM table_liaison_communication AS tr
LEFT JOIN table_enr AS trr
ON tr.id_link = trr.id
LEFT JOIN table_data AS t1
ON tr.id_link = t1.id_link
AND tr.key_name = t1.key_name
LEFT JOIN table_index_nom AS t2
ON tr.id_link = t2.id_link
WHERE t1.key_name != ''
AND t1.key_name LIKE '%email%'
AND t1.val LIKE '%e%'
AND t2.val LIKE 'a%t%r'
AND trr.profil = '1 '
AND trr.acces = '1'
AND trr.etat = '1'
AND trr.id_link = '0'
UNION
SELECT tr.id
FROM table_liaison_communication AS tr
LEFT JOIN table_enr AS trr
ON tr.id_link = trr.id
LEFT JOIN table_data AS t1
ON tr.id_link = t1.id_link
AND tr.key_name = t1.key_name
LEFT JOIN table_index_nom AS t2
ON tr.id_link = t2.id_link
WHERE t1.key_name != ''
AND t1.key_name LIKE '%email%'
AND t1.val LIKE '%g%'
AND t2.val LIKE 'r%e%'
AND trr.profil = '1 '
AND trr.acces = '1'
AND trr.etat = '1'
AND trr.id_link = '0'
UNION
SELECT tr.id
FROM table_liaison_communication AS tr
LEFT JOIN table_enr AS trr
ON tr.id_link = trr.id
LEFT JOIN table_data AS t1
ON tr.id_link = t1.id_link
AND tr.key_name = t1.key_name
LEFT JOIN table_index_nom AS t2
ON tr.id_link = t2.id_link
WHERE t1.key_name != ''
AND t1.key_name LIKE '%email%'
AND t1.val LIKE '%e%'
AND t2.val LIKE 'e%m%'
AND trr.profil = '1 '
AND trr.acces = '1'
AND trr.etat = '1'
AND trr.id_link = '0' |
cela me donne un résultat en ( 207 total, Traitement en 0.0890 sec)
Mais dès que je met :
SELECT DISTINCT id_link FROM table_liaison_communication WHERE id IN(...votre requête...)
Pour obtenir mon resultat final cela met : ( 176 total, Traitement en 1.0806 sec)
Résultat correct mais qui met en fait bien plus de 3 secondes à remonter au final(plus que 1.0806 sec) pourtant cela me semble être une requête toute bête ???
En gros est ce normal de passer de 0,0890 seconde à + 1 seconde ?
Soit plus 10X plus de temps ?
Merci de votre aide !
Bonne journée,
Partager