列中数据的最长值

Longest value of a data in a column

查询以显示具有最长名称的用户名称,按用户名称排序。请注意,用户名中可能有前导或尾随空格。

我尝试了以下查询:

select name, max(length(trim(name))) as length 
from user 
group by name 
order by name;

但它给了我 name 列所有值的长度,没有空格。

但我只需要那些具有最大长度的值。

假设列中有15个名字,其中最长的有5个名字,所以这5个名字和对应的长度都是。

Table 姓名:user

列名和数据类型:

name varchar(255)
SELECT *
FROM users
WHERE length(trim(name)) = (SELECT max(length(trim(name))) FROM users)
ORDER BY name
select name from user where length(name) = (select max(length(name)) from user) order by name;

这对我有用!!