Dengan menggunakan contoh Anda, Anda dapat mengerjakan bagian dari nama orang tua pada anak-anak jika nama orang tua terkandung di dalam nama tanggungan. Jika demikian, pertimbangkan kueri gabungan:
# GREAT-GRANDPARNTS
SELECT DISTINCT Null As Parent, Parent As Dependent
FROM Ancestry
WHERE Len(Parent) = 1
UNION
# GRANDPARNTS
SELECT DISTINCT Left(Parent, 1) As Parent, Parent As Dependent
FROM Ancestry
WHERE Len(Parent) = 3
UNION
# PARENTS
SELECT DISTINCT Left(Child, 1) As Parent, Child As Dependent
FROM Ancestry
WHERE Len(Child) > 3
UNION
# CHILDREN
SELECT DISTINCT Left(Child, 3) As Parent, Child As Dependent
FROM Ancestry
WHERE Len(Child) > 3;
Tentu saja sesuaikan Len()
, Left()
, atau Mid()
string berfungsi dan diperluas (yaitu, cucu) sesuai dengan pola nama Leluhur yang sebenarnya. Solusi ini tidak akan berfungsi jika tidak ada referensi orang tua dalam nilai string anak.