• Курсы Академии Кодебай, стартующие в мае - июне, от команды The Codeby

    1. Цифровая криминалистика и реагирование на инциденты
    2. ОС Linux (DFIR) Старт: 16 мая
    3. Анализ фишинговых атак Старт: 16 мая Устройства для тестирования на проникновение Старт: 16 мая

    Скидки до 10%

    Полный список ближайших курсов ...

замена записей в таблице

  • Автор темы sasha_hlp
  • Дата начала
Статус
Закрыто для дальнейших ответов.
S

sasha_hlp

Помогите плиз!
Есть таблица:
(ТТ(id торговой точки) , А(id агента), дата (дата документа))
1 0 11.10
1 1 12.10
2 1 12.10
1 2 13.10
2 0 14.10
1 3 15.10
1 0 16.10

Есть документы где А не проставлен (0).
С одной Торговой точкой могут работать несколько агентов.

Надо:
Создать таблицу где:
Там где не проставлен Агент (0) заменить на агента который последним работал с торговой точкой по дате.

?:

как это сделать
 
S

sasha_hlp


SQL Server 2000

вроде справился

Код громоздкий но работает

[sql]update Zamena
set Agent=case
when A.DataDoc<(select top 1 DataDoc from Zamena B where B.TT=A.TT and Agent<>'0' order by DataDoc) then (select top 1 Agent from Zamena C where C.TT=A.TT and Agent<>'0' order by DataDoc)
else (select top 1 Agent from Zamena D where D.TT=A.TT and Agent<>'0' and D.DataDoc<A.DataDoc order by DataDoc desc)
end
from Zamena A
Where Agent='0'[/sql]
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!