Ранг Excel против ранга SQL - PullRequest
       0

Ранг Excel против ранга SQL

0 голосов
/ 07 декабря 2018

У меня следующая дилемма.

Мне нужно rank данные в Excel, так же, как я ранжирую их в SQL, как показано ниже:

declare @table table
(id int identity primary key , batchid int)

insert into @table (batchid) select 10
insert into @table (batchid) select 35
insert into @table (batchid) select 35
insert into @table (batchid) select 35
insert into @table (batchid) select 8
insert into @table (batchid) select 21
insert into @table (batchid) select 10
insert into @table (batchid) select 11
insert into @table (batchid) select 4
insert into @table (batchid) select 10
insert into @table (batchid) select 11
insert into @table (batchid) select 4
insert into @table (batchid) select 21
insert into @table (batchid) select 8
insert into @table (batchid) select 21
insert into @table (batchid) select 8
insert into @table (batchid) select 21
insert into @table (batchid) select 4
insert into @table (batchid) select 21
insert into @table (batchid) select 10
insert into @table (batchid) select 21
insert into @table (batchid) select 11
insert into @table (batchid) select 21
insert into @table (batchid) select 8
insert into @table (batchid) select 21
insert into @table (batchid) select 10
insert into @table (batchid) select 21
insert into @table (batchid) select 10
insert into @table (batchid) select 21

select
batchid
,   rank() over (partition by batchid order by id)  [RANK]
from    @table

Я посмотрелна большом количестве YouTube видео и учебных пособий о том, как rank в Excel , однако я не вижу опции partition by, что rank, как это видно в кодевыше.

См. ниже результаты приведенного выше сценария:

enter image description here

Какую формулу можно использовать в Excel для достижения тех же результатов?

Ответы [ 2 ]

0 голосов
/ 07 декабря 2018

Проверка SUMPRODUCT .Пример из, здесь :

Выберите пустую ячейку рядом с данными, например C2, введите эту формулу,

=SUMPRODUCT(($A$2:$A$11=A2)*(B2<$B$2:$B$11))+1 

затем перетащите маркер автозаполнения вниз, чтобы применить эту формулу к нужным ячейкам.

В формуле A2: A11 - это диапазон, содержащий значения группы, A2 - первая ячейка в списке значений группы,B2 - это первая ячейка в списке, которая должна быть ранжирована, B2: B11 - это список, который содержит значения, необходимые для ранжирования.

enter image description here

0 голосов
/ 07 декабря 2018

Это довольно просто с простой формулой:

enter image description here

В ячейке B1 вы вводите начальное значение 1.Затем в B2 вы вводите формулу:

=IF(A1=A2,B1+1,1)

Затем перетащите ее полностью вниз.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...