mysql - SQL/MySQL - 按列长度排序

标签 mysql sql database

在 MySQL 中,有没有一种方法可以按列的长度(字符)对我的结果进行排序?

例如:

myColumn
________________
lor
lorem
lorem ip
lorem ips
lorem ipsum

我想按最小列长度“lor”排序我的结果,并以最大列长度“lorem ipsum”结尾。这也应该包括 0 的列长度。

非常感谢收到的任何建议...

最佳答案

您可以使用 CHAR_LENGTH() 功能:

ORDER BY CHAR_LENGTH( column )

请注意,CHAR_LENGTH() 也适用于 Unicode 字符串,其中 LENGTH() 适用于拉丁语,但对于 Unicode 可能会产生意想不到的结果:

CHAR_LENGTH(str)

Returns the length of the string str, measured in characters. A multi-byte character counts as a single character. This means that for a string containing five two-byte characters, LENGTH() returns 10, whereas CHAR_LENGTH() returns 5.

关于mysql - SQL/MySQL - 按列长度排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7705139/

相关文章:

sql - 多个表上的多个 FULL OUTER JOIN

php - 有人可以从我的服务器外部访问我的数据库吗?

php - 使用 PHP 创建 MongoDB 数据库

java - 如何删除具有多对多关系的实体?日本PA

mysql - 我们可以在 mysql 中使用 sum of in group_concat 吗?

mysql - 重置 SQLite3/MySQL 中的行数计数

mysql - 连续显示多条记录

mysql - 以下哪个查询被优化/首选

MySql - 动态逻辑计算器

php - 如何设置参数在未设置时不过滤SQL查询