2015-07-14 2 views
0

Запрос для отображения имени пользователя (пользователей), имеющего самое длинное имя, отсортированного по имени пользователя. Обратите внимание, что в именах пользователей могут быть ведущие или конечные пробелы.Самое длинное значение данных в столбце

Я попробовал следующий запрос:

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

, но это дает мне длину всех значений столбца name без пробелов.

Но мне нужны только те значения, которые имеют максимальную длину.

Предположим, что в колонке имеется 15 имен, и есть 5 наименований, длина которых самая длинная, поэтому все эти 5 имен и соответствующая длина. Имя

Таблица: Название user

Колонка и тип данных:

name varchar(255) 

ответ

0
select name from user where length(name) = (select max(length(name)) from user) order by name; 

это работало для меня !!

0
SELECT * 
FROM users 
WHERE length(trim(name)) = (SELECT max(length(trim(name))) FROM users) 
ORDER BY name 
Смежные вопросы