SQL для ранжирования по условным значениям

Либо вы создаете скрипт powershell, который выполняет сопоставление и копирование.

Другой способ (здесь предполагается, что оба источника и целевые серверы находятся в одном домене)

     - name: copy files
       win_copy:
          src: \\domain_server\c$\somefile.txt
          dest: c:\Dir\somefile.txt
          remote_src: true

`

1
задан user1315414 19 January 2019 в 22:19
поделиться

1 ответ

Это намного проще в SQL Server. Вы можете использовать lag() для определения пиков, совокупную сумму для определения результирующих групп, а затем row_number():

select nh.*, row_number() over (partition by symbol, high_grp order by close_date) as rank_by_new_high
from (select nh.*,
             sum(case when prev_cp < close_price then 0 else 1 end) over (partition by nh.symbol order by nh.close_date) as high_grp
      from (select nh.*,
                   lag(nh.close_price) over (partition by nh.symbol order by nh.close_date) as prev_cp
            from #new_high nh
           ) nh
     ) nh
order by symbol, close_date;

Здесь - db <> fiddle. [ 115]

Вы не спрашиваете моего мнения, но я бы порекомендовал вам выполнять свою работу в SQL Server, а не в MS Access. Это гораздо более функциональная база данных.

0
ответ дан Gordon Linoff 19 January 2019 в 22:19
поделиться
Другие вопросы по тегам:

Похожие вопросы: