Hallo,
schön, daß Du so nach und nach mit den Details rausrückst.
Eine stored procedure wäre sicher die Lösung, falls Du weisst, wie (ich nicht, weil ich den MS SQL-Server kaum kenne) - aber es geht sicher auch mit purem SQL, wenn auch etwas brutal:
select buchst, sum (count) from (select substr(word,1,1) as buchst, count(\*) as count from words group by substr(word,1,1) union
select substr(word,2,1), count(\*) from words group by substr(word,2,1) union
...
select substr(word,n-1,1), count(\*) from words group by substr(word,n-1,1)) group by buchst;
Falls select … from select nicht geht, den Ausdruck in der Klammer in einer Zwischentabelle speichern.
n sollte der maximalen Wortlänge entsprechen.
Ist ungetestet, habe keine Datenbank hier (schon gar keine von Microsoft).
cu
Uwe
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]