Для посчета количества символов в строке (просто количества символов) служит функция:
CHAR_LENGTH(str)
например:
SELECT CHAR_LENGTH(mycol) FROM mytable;
Для подсчета количество определенных символов (например, разделителей) в строке придется написать запрос (например, чтобы посчитать количество символов ':') :
SELECT (CHAR_LENGTH(mycolumn) - CHAR_LENGTH(REPLACE(mycolumn,':',''))) div CHAR_LENGTH(':') FROM mytable;
Т.е. мы:
а) Считаем количество символов вообще
б) Заменяем нужные нам символы на пустоту
в) Считаем количество символов в строке без нужных нам к подсчету
г) Т.к. под "разделителем" может быть и многобайтовая строка - считаем длинну строки
д) Делением получаем количество вхождений разделителя в строку
Чтобы посчитать максимальное количество символов во всех строках столбца определенного вида - к выше изложенной записи добавляем впереди функцию MAX():
SELECT MAX((CHAR_LENGTH(mycolumn) - CHAR_LENGTH(REPLACE(mycolumn,':',''))) div CHAR_LENGTH(':')) FROM mytable;
Комментарии
Оставить комментарий
Базы данных - MySql (Maria DB)
Термины: Базы данных - MySql (Maria DB)