Schnelle Statements – Ermittlung der Anzahl eines bestimmten Zeichens in einer Zeichenkette

Ich habe mich soeben entschlossen eine separate Kategorie für nützliche SQL-Statements zu eröffnen, die man evtl. mal brauchen könnte. Aus einem Anwendungsfall heraus gerade eben wurde es notwendig, in einer Datenbank abgelegte Netzwerkpfade nach ihrer Verzeichnistiefe zu sortieren. Als einzigen Anhaltspunkt dafür habe ich den UNC-Pfad, aus dem ich die Verzeichnistiefe anhand der Anzahl der enthaltenen \ ermitteln kann.

Mit dem folgenden Statement kann man die Anzahl eines bestimmten Zeichens in einer Zeichenkette ermitteln:

Select (Len(<Tabelle.Zeichenkette>) – Len(Replace(<Tabelle.Zeichenkette>, ‚<zu zählendes Zeichen‘, “))) from Tabelle

Viel Spaß beim nachahmen.