Er is geen ingebouwde functie die het aantal subtekenreeksen in een tekenreeks telt, maar u kunt het verschil berekenen tussen de originele tekenreeks en dezelfde tekenreeks zonder komma's:
LENGTH(fooCommaDelimColumn) - LENGTH(REPLACE(fooCommaDelimColumn, ',', ''))
Het is in de loop van bijna 8 jaar nu meerdere keren aangepast (wauw!), dus voor de duidelijkheid:de bovenstaande zoekopdracht heeft geen + 1
nodig , omdat OPs-gegevens een extra volgkomma hebben.
Terwijl inderdaad, in het algemeen voor de string die er als volgt uitziet:foo,bar,baz
de juiste uitdrukking zou zijn
LENGTH(col) - LENGTH(REPLACE(col, ',', '')) + 1