посчитать количество гласных букв в строке SQL

подскажите пожалуйста, пытаюсь посчитать количество согласных букв в строке SQL и все работает ок. когда хочу посчитать количество гласных, убрав знак ^ в регулярке - получаю какой-то кривой результат. в чем может быть дело?

SELECT name, count(pattern)
FROM (
SELECT *,
       regexp_matches(name,'([^аеиуэыюяо])','g') as pattern
FROM Personal ) test
GROUP BY name

https://www.db-fiddle.com/f/pqn7HUneeB2kr8DT9hQEAt/1


Ответы (1 шт):

Автор решения: Stanislav Kaliberda

было найдено более элегантное решение вопроса:

SELECT name,
      REGEXP_COUNT (name, 'ё|у|е|ы|а|о|э|я|и|ю', 1, 'i') as count
FROM Personal
→ Ссылка