SELECT * FROM table ORDER BY string_length(column);
Есть ли функция MySQL для этого (конечно, вместо string_length
)?
Вы ищете CHAR_LENGTH()
, чтобы получить количество символов в строке.
Для многобайтовых кодировок LENGTH()
даст вам количество байтов, которое занимает строка, а CHAR_LENGTH()
вернет число символы.
select * from table order by length(column);
Документация по функции length(), а также все другие строковые функции доступны здесь.
Посмотрев документацию по MySQL для строковых функций, мы также можем использовать CHAR_LENGTH()
и CHARACTER_LENGTH()
.
выберите * из имени таблицы, где 1 имеет длину (имя поля) = длина поля
Пример, если вы хотите выбрать из клиента записи с именем короче, чем 2 символа.
выберите * у клиента, где 1 имеет длину (имя) <2
Функция, которую я использую для поиска длины строки, length
, используется следующим образом:
SELECT * FROM table ORDER BY length(column);