Есть таблица БД с текстовыми полями ~30млн. записей UTF-8.
Необходимо подсчитать количество вхождений каждого символа во всей базе.
Результат - что-то вроде:
А - 235235434 шт.
Б - 23568285 шт.
.... и т.д.
SELECT c.letter, SUM(LENGTH(t.field) - LENGTH(REPLACE(t.field, c.letter, ''))) `count`
FROM table t, (SELECT 'A' letter
UNION
SELECT 'B'
UNION
--
SELECT 'ю'
UNION
SELECT 'я'
) с
GROUP BY c.letter
Для генерации таблицы символов (она необходима!) можно использовать любой другой способ. И даже создать такую таблицу (это вообще самый правильный вариант).
Если в исходной таблице несколько полей и надо посчитать по отдельности - добавить соотв. количество SUM() в выходной набор. А если надо посчитать вместе - заменить field на CONCAT(field1, field2, ...).
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости