Как использовать сводку в sql в несколько столбцов

#sql #sql-server

Вопрос:

Кто-нибудь может помочь мне с SQL с помощью pivot?

Например, у меня есть список, показанный ниже, с 1 столбцом:

введите описание изображения здесь

и я хочу, чтобы результат стал таким:

введите описание изображения здесь

Я попробовал повернуть, но у меня получилось только 1 ряд.. Мне просто нужно несколько строк.

Комментарии:

1. зачем вам такой вывод , просто из любопытства, каков реальный вариант использования ?

Ответ №1:

Вы можете использовать оконные функции. В вашем случае у вас есть последовательность без пробелов, поэтому вы можете просто использовать арифметику по модулю:

     select max(case when units % 10 = 1 then units end),
           max(case when units % 10 = 2 then units end),
           . . .
           max(case when units % 10 = 0 then units end)
    from t
    group by ceiling(units / 10.0);