-- =====================================================
-- V3.3 — Optimisation des Index de Performance
-- Cat.7 — Index composites pour recherches fréquentes
-- =====================================================

-- 1. Index composite sur les membres (Recherche par nom complet)
CREATE INDEX IF NOT EXISTS idx_membre_nom_prenom ON utilisateurs(nom, prenom);

-- 2. Index composite sur les cotisations (Recherche par membre et année)
CREATE INDEX IF NOT EXISTS idx_cotisation_membre_annee ON cotisations(membre_id, annee);

-- 3. Index sur le Keycloak ID pour synchronisation rapide
CREATE INDEX IF NOT EXISTS idx_membre_keycloak_id ON utilisateurs(keycloak_id);

-- 4. Index sur le statut des paiements
CREATE INDEX IF NOT EXISTS idx_paiement_statut_paiement ON paiements(statut_paiement);

-- 5. Index sur les dates de création pour tris par défaut
CREATE INDEX IF NOT EXISTS idx_membre_date_creation ON utilisateurs(date_creation DESC);
CREATE INDEX IF NOT EXISTS idx_organisation_date_creation ON organisations(date_creation DESC);
