Pergunta

SELECT * FROM table ORDER BY string_length(column);

Existe uma função MySQL para fazer isso (é claro em vez de string_length)?

Foi útil?

Solução

Você está procurando CHAR_LENGTH() Para obter o número de caracteres em uma string.

Para charsets multi-bytes LENGTH() dará a você o número de bytes que a string ocupa, enquanto CHAR_LENGTH() retornará o número de caracteres.

Outras dicas

select * from table order by length(column);

A documentação sobre a função Length (), bem como todas as outras funções de string, está disponível aqui.

Dando uma olhada em Documentação do MySQL Para as funções da string, também podemos usar CHAR_LENGTH() e CHARACTER_LENGTH() também.

A função que eu uso para encontrar o comprimento da string é length, usado da seguinte maneira:

SELECT * FROM table ORDER BY length(column);

Eu usei essas frases para filtrar

SELECT table.field1, table.field2 FROM table WHERE length(field) > 10;

Você pode alterar 10 para outro número que deseja filtrar.

selecione de Nome da tabela onde 1 tendo comprimento (FieldName)=FieldLength

Exemplo Se você deseja selecionar do cliente as entradas com um nome mais curto, 2 chars.

Selecione * do cliente onde 1 tendo comprimento (nome) <2

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top