Вопрос

Я пытаюсь просмотреть самые длинные сообщения в stackoverflow, используя:

https://data.stackexchange.com/stackoverflow/query/new

Я делаю:

select max(body) from posts;​

и это возвращается:

You'd be looking to static link (as opposed to dynamically link)

I'm not sure how many of the MS redistributables statically link in.
Это было полезно?

Решение

Тот Самый max функция возвращает максимальное значение выражения.То, что (я думаю) вам нужно, - это комбинация top и len(body).

select top 10 len(body), Id as [Post Link] 
from posts
order by len(body) desc

Другие советы

select top 10 body from posts order by len(body) desc;

Как насчет чего-то вроде

select top 10 len(body) from posts order by len(body) desc​

макс. (корпус) Возвращает не самое длинное сообщение, а последнее, если вы сортируете его в алфавитном порядке.в нашем случае это начинается с

Ты бы будьте внимательны ...

МАКС - это агрегатная функция.При работе с типом данных числовой столбец он будет возвращать наибольшее значение.Для символьных столбцов MAX находит наибольшее значение в последовательности сортировки.В любом случае, он вернет только одно значение для каждой группы - если группы не указаны, он вернет только одно значение.

Это оставляет вас с необходимостью получить длину тела, чтобы вы могли упорядочить результаты - у вас есть два варианта:

  • ЛЕН возвращает количество символов, а не количество байтов, данного строкового выражения, исключая конечные пробелы.
  • ДЛИНА ДАННЫХ возвращает количество байтов, используемых для представления любого выражения.DATALENGTH особенно полезен с типами данных varchar, varbinary, text, image, nvarchar и ntext, поскольку эти типы данных могут хранить данные переменной длины.Длина данных, равная NULL, равна NULL.

Итак, вы хотели бы использовать следующий запрос:

  SELECT TOP 10 p.body
    FROM POSTS p
ORDER BY DATALENGTH(p.body) DESC
Select Top 10 Title, Len(Body) As BodyLength
From Posts
Order By Len(Body) Desc

Похоже, вы хотите что-то вроде:

выберите текст из 10 лучших публикаций упорядочить по названию (body) desc

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top