Bonjour à tous,
J'espère que tout le monde se porte bien.

J'ai la requête suivante qui me donne une liste de dossiers, de NISS de personnes de référence (colonne C) et le (ou les) COHAB de cette personne (en colonne D).
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
DEFINE my_period = 202101
SELECT DISTINCT
    &&my_period AS mois_réf
    ,chi.file_number AS dossier
    ,per.inss AS niss
    ,CASE WHEN fam.type LIKE 'D%' THEN per4.inss ELSE NULL END AS cohab
FROM children chi
    INNER JOIN legal_situation leg ON leg.child_id = chi.actor_id
        AND (&&my_period BETWEEN (leg.start_year * 100 + leg.start_month) AND NVL(leg.end_year * 100 + leg.end_month,999999))
        AND leg.status = 'ACTIVE'
    INNER JOIN childbeneficiarylinks cbl ON cbl.child_id = chi.actor_id
        AND (&&my_period BETWEEN (cbl.start_year * 100 + cbl.start_month) AND NVL(cbl.end_year * 100 + cbl.end_month,999999))
    INNER JOIN actors ac ON ac.actor_id = cbl.beneficiary_id
    INNER JOIN persons per ON per.person_id = ac.person_id
    INNER JOIN historical_family_situations his_fam ON his_fam.concerned_natural_person_id = ac.person_id
    INNER JOIN family_situations fam ON his_fam.historical_fam_situation_id = fam.historical_fam_situation_id
        AND TO_NUMBER(TO_CHAR(LAST_DAY(ADD_MONTHS(TO_DATE(&&my_period, 'yyyymm'), -1)),'yyyymmdd')) BETWEEN TO_NUMBER(TO_CHAR(fam.start_date,'yyyymmdd')) AND NVL(TO_NUMBER(TO_CHAR(fam.end_date,'yyyymmdd')),99991231)
    LEFT JOIN persons per4 ON per4.person_id = fam.second_natural_person_id
ORDER BY 3, 4
;

Soit cette personne habite seule et je ne la trouve qu'une fois dans ma liste sans donnée dans la colonne D. OK (ligne 4)
Soit cette personne est en ménage avec une seule autre personne et je ne la trouve également qu'une fois dans ma liste avec le mention du cohabitant dans la colonne D. OK (ligne 1)
Soit cette personne est en ménage avec plus d'une personne et alors, j'ai autant de lignes que de cohabitant. C'est ici que je voudrais de l'aide si possible. Voici le schéma en Excel de ce que j'ai et de ce que je voudrais en colonnes G→O (car il y a au max 6 cohabitants) (lignes 9-10 ou lignes 12-13-14).
Nom : Image 35.png
Affichages : 139
Taille : 225,3 Ko
Ma question : est-il possible d'avoir une seule ligne par personnes de référence et, à la queue leu-leu, les éventuels cohabitants sur la même ligne ?
Un grand merci pour les pistes...