Функции OCTETLENGTH и CHARACTERLENGTH в MySQL отличаются тем, что возвращают разные значения. 14
Функция OCTET_LENGTH возвращает количество байтов, занимаемых входным параметром функции. 1
Функция CHARACTERLENGTH (сокращённое название CHARLENGTH) возвращает количество символов, занимаемых входным параметром функции (константа, контекстная переменная, столбец таблицы). 1 Для строки функция возвращает именно количество символов, а не байтов, отводимых под исходную строку. 1
Таким образом, основное отличие в том, что первая функция определяет размер строки в байтах, а вторая — в символах. Если функция применяется к столбцу, в котором для каждого символа используется более одного байта, то количество байтов (функция OCTETLENGTH) будет больше, чем количество символов (функция CHARACTERLENGTH). 1