Bonjour,

J'essaye d'écrire une requete SQL, mais elle me plante Access à chaque foi, le CPU restant bloqué à 100% ...

Ca me rapelle les boucles infines en prog !

Pourriez vous m'aider à débeugger cette requete ?

Je gère un planning. les séances sont plannifiées de la sorte qu'on sait que la séance du lundi 18h pour l'activité 1 et la saison 5 va de telle semaine à telle autre.

Le pb, c'est que les saisons sont à cheval sur 2 ans ... donc je me rettrouve avec des séances qui commencent semaine 24 et qui finissement semaine 3 !

Et en fait je dois afficher :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
JOUR | HEURE | DEBUT | FIN
Lundi | 15h00  |  24      |  3
et non
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
JOUR | HEURE | DEBUT | FIN
Lundi | 15h00  |  1      |  52
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
SELECT JOU_nom, P1.PLA_heure_seance, P1.PLA_semaine, P2.PLA_semaine
FROM PLANNING AS P1, PLANNING AS P2, JOURS
WHERE P1.PLA_activite=1 And P1.PLA_saison=Forms!MenuPrincipal!cmb_saison.value And P1.PLA_jour_seance=JOU_id
AND P1.PLA_semaine=(SELECT PLA_semaine
                                      FROM PLANNING
                                      WHERE PLA_jour_seance=P1.PLA_jour_seance
                                      AND PLA_heure_seance=P1.PLA_heure_seance
                                      AND PLA_saison=Forms!MenuPrincipal!cmb_saison.value
                                      AND PLA_activite=1
                                      AND PLA_id=(SELECT min(PLA_id) FROM PLANNING
                                                                            WHERE PLA_jour_seance=P1.PLA_jour_seance
                                                                            AND PLA_heure_seance=P1.PLA_heure_seance
                                                                            AND PLA_saison=Forms!MenuPrincipal!cmb_saison.value
                                                                            AND PLA_activite=1
                                                            )
                                      )
AND P2.PLA_semaine=(SELECT PLA_semaine
                                      FROM PLANNING
                                      WHERE PLA_jour_seance=P2.PLA_jour_seance
                                      AND PLA_heure_seance=P2.PLA_heure_seance
                                      AND PLA_saison=Forms!MenuPrincipal!cmb_saison.value
                                      AND PLA_activite=1
                                      AND PLA_id=(SELECT max(PLA_id) FROM PLANNING
                                                                            WHERE PLA_jour_seance=P2.PLA_jour_seance
                                                                            AND PLA_heure_seance=P2.PLA_heure_seance
                                                                            AND PLA_saison=Forms!MenuPrincipal!cmb_saison.value
                                                                            AND PLA_activite=1
                                                            )
                                      )
GROUP BY JOU_nom, JOU_id, P1.PLA_heure_seance, P1.PLA_semaine, P2.PLA_semaine
ORDER BY JOU_id, P1.PLA_heure_seance;