Bonjour,
Pour faire simple, voilà une série de données :
Logement Rattachement
A | B
B | C
C | D
D | B
E | A
F | D
G | F
H | B
J | K
K | L
L | J
Je veux pouvoir indiquer quels sont les groupes de Logement, à savoir ici d'un coté A, B, C, D, E, F, G et H puis d'un autre J, K et L.
Le problème est que l'élément père est parfois le frère d'un autre et vice versa. Par exemple on sait que A et C sont du même groupe car A est rattaché à B et B est rattaché à C, etc
Si vous avez une idée, elle est la bienvenue
Merci
le script pour les tests (sous MS SQL 2005) :
WITH TMP AS (SELECT 'A' AS Logement, 'B' AS Rattachement UNION SELECT 'B' AS Logement, 'C' AS Rattachement
UNION SELECT 'C' AS Logement, 'D' AS Rattachement UNION SELECT 'D' AS Logement, 'B' AS Rattachement
UNION SELECT 'E' AS Logement, 'A' AS Rattachement UNION SELECT 'F' AS Logement, 'D' AS Rattachement
UNION SELECT 'G' AS Logement, 'F' AS Rattachement UNION SELECT 'H' AS Logement, 'B' AS Rattachement
UNION SELECT 'J' AS Logement, 'K' AS Rattachement UNION SELECT 'K' AS Logement, 'L' AS Rattachement
UNION SELECT 'L' AS Logement, 'J' AS Rattachement)
SELECT *
FROM TMP
Partager