Bonjour à tous,

je souhaite réaliser un auto-join afin de trouver les "récidives".

Voici ma requête my_sql :
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
 
            $query = "SELECT DISTINCT * FROM signalements as s1 
                inner join signalements as s2 
                on (s1.engin_menant = s2.engin_menant 
                or s1.engin_milieu = s2.engin_menant 
                or s1.engin_mene = s2.engin_menant 
                or s1.engin_menant = s2.engin_milieu 
                or s1.engin_milieu = s2.engin_milieu 
                or s1.engin_mene = s2.engin_milieu 
                or s1.engin_menant = s2.engin_mene 
                or s1.engin_mene = s2.engin_mene 
                or s1.engin_mene = s2.engin_mene) 
                and (s1.fct_globale = s2.fct_globale) 
                and TO_DAYS(NOW()) - TO_DAYS(s1.date_incident) <= 30 
                and TO_DAYS(NOW()) - TO_DAYS(s2.date_incident) <= 30 
                and s1.fct_globale !='' 
                and s1.id_signal < s2.id_signal ";
Qui fonctionne très bien et me donne dans phpmyadmin exactement ce que je souhaite (une ligne avec tous les champs des deux signalements concernés).

Cependant, je n'arrive pas à récupérer ensuite dans php les données. Plus précisément,

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
            while ($courant = mysql_fetch_assoc($result)){
                echo $courant['s1.id_signal'].$courant['s2.lieu_incident'];
            }
ne donne rien du tout et

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
            while ($courant = mysql_fetch_assoc($result)){
                echo $courant['id_signal'].$courant['lieu_incident'];
            }
donne les données du deuxième signalement.

Merci d'avance pour votre aide

Sébastien