|
Оконная функция
|
|||
---|---|---|---|
#18+
Добрый день. Помогите, пожалуйста, написать используя оконную функцию запрос, который бы выводил в разрезе id для каждого цвета = 'black' какой именно был последний цвет но не равный 'red' или 'blue'. Данные для примера: create table #TestTable ( date date, id Varchar(10), color Varchar(10) ) insert into #TestTable (date,id,color) values ('2021-01-01', '111', 'green'), ('2021-01-02', '111', 'red'), ('2021-01-03', '111', 'green'), ('2021-01-04', '111', 'black'), ('2021-01-01', '222', 'green'), ('2021-01-02', '222', 'blue'), ('2021-01-03', '222', 'black'), ('2021-01-01', '333', 'black'), ('2021-01-01', '444', 'blue') Желаемый результат: date------------id----------color----------prev_date----------prev_color 04.01.2021--111--------black----------03.01.2021--------green 03.01.2021--222--------black----------01.01.2021--------green 01.01.2021--333--------black----------null-----------------null Microsoft SQL Server 2019 (RC1) ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2021, 17:41 |
|
Оконная функция
|
|||
---|---|---|---|
#18+
Pallich, Код: sql 1. 2. 3. 4. 5. 6.
... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2021, 18:03 |
|
Оконная функция
|
|||
---|---|---|---|
#18+
court, Громадное спасибо! То что нужно. Буду разбираться. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2021, 18:12 |
|
Оконная функция
|
|||
---|---|---|---|
#18+
через оконную функцию это так: Код: sql 1. 2. 3. 4. 5. 6. 7. 8.
... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2021, 18:20 |
|
Оконная функция
|
|||
---|---|---|---|
#18+
spenov, Спасибо, но у вас результат не верный. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2021, 22:31 |
|
Оконная функция
|
|||
---|---|---|---|
#18+
Pallich spenov, Спасибо, но у вас результат не верный. ... зато с over (partition by...) ... |
|||
:
Нравится:
Не нравится:
|
|||
11.08.2021, 01:26 |
|
Оконная функция
|
|||
---|---|---|---|
#18+
Pallich, это было обозначение направления, для подумать. у вас в задании не просто так же упомянуто слово "оконная". Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15.
... |
|||
:
Нравится:
Не нравится:
|
|||
11.08.2021, 05:25 |
|
|
start [/forum/topic.php?fid=46&msg=40089977&tid=1684415]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
138ms |
get topic data: |
13ms |
get forum data: |
2ms |
get page messages: |
44ms |
get tp. blocked users: |
1ms |
others: | 268ms |
total: | 498ms |
0 / 0 |