Skip to main content

Statistiques

La section Consultation Données affiche 6 cartes de statistiques en haut de page, calculées dynamiquement selon les filtres actifs ou sur l'ensemble de la base.


Les 6 indicateurs

IndicateurSource SQLDescription
Références ActivesREFERENCES WHERE REF_ACTIF = 1Nombre de références actives
Références InactivesREFERENCES WHERE REF_ACTIF = 0Nombre de références inactives
CatégoriesCATEGORIES WHERE ACTIF = 1 (DISTINCT)Nombre de catégories distinctes
Acteurs ActifsACTEURS WHERE ACTIF = 1Nombre d'acteurs actifs
Contrats ActifsCONTRATS WHERE STATUT = 1Nombre de contrats actifs
Réfs équivalentesREFERENCES_CONCURRENTS avec REF_EQUIVALENTE non nulleNombre d'entrées d'équivalents concurrents

Comportement selon les filtres

Sans filtre actif

Les statistiques affichent les totaux globaux de la base, calculés au chargement de la page via des requêtes directes et simples.

Avec filtre(s) actif(s)

Chaque indicateur est recalculé indépendamment via sa propre requête SQL paramétrée. Les jointures supplémentaires sont ajoutées dynamiquement selon les filtres appliqués (catégorie, plateforme, trigramme, contrat, etc.).

Les cartes affichent alors un sous-label "Calcul filtré" pour indiquer que les chiffres correspondent à la sélection en cours.

warning

Les 5 statistiques sont calculées par 5 requêtes SQL indépendantes. En cas de filtres complexes, ce sont donc au minimum 6 requêtes supplémentaires (dont le COUNT total pour la pagination).


Logique de calcul filtré

Pour chaque statistique, la requête de base est construite dynamiquement :

  1. La table principale est définie (ex: REFERENCES, ACTEURS, CONTRATS)
  2. Les jointures nécessaires sont ajoutées uniquement si le filtre correspondant est actif (via un tableau $joins pour éviter les doublons de jointures)
  3. Les conditions WHERE sont accumulées dans un tableau $where
  4. Si une recherche globale est active, des sous-requêtes EXISTS sur REFERENCES_CONCURRENTS sont ajoutées

Indicateur visuel

Les cartes de statistiques ont un style distinct selon leur état :

  • Fond normal : vue globale (aucun filtre)
  • Classe CSS .filtered : vue filtrée (au moins un filtre ou une recherche actifs)