Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Требуется совет  [new]
Артем11
Member

Откуда:
Сообщений: 3
Есть таблица со следующими полями:
id (id счета)
date (дата сальдо)
remainder (исходящий остаток)
deb (обороты по дебету)
cre (обороты по кредиту)
Мне нужно проверить обороты, а именно то, что исходящий остаток на последнюю дату (должна браться последняя запись в таблице) соответствует исходящему остатку за предыдущую дату с учетом текущих оборотов. Т.е. remainder="remainder-1" + "cre" - "deb". Вывести нужно account_id, остатки по которым не верны.
Связано это с тем, что остатки пишутся в таблицу напрямую из другого источника, а обороты расчитываются из операций по счету, и этих операций может тупо не хватать.
5 сен 11, 11:41    [11227136]     Ответить | Цитировать Сообщить модератору
 Re: Требуется совет  [new]
iljy
Member

Откуда:
Сообщений: 8711
Артем11,

и что не получается? Соединяете каждую запись с предыдущей и проверяете ваши условия.
5 сен 11, 11:54    [11227280]     Ответить | Цитировать Сообщить модератору
 Re: Требуется совет  [new]
Артем11
Member

Откуда:
Сообщений: 3
iljy
Артем11,

и что не получается? Соединяете каждую запись с предыдущей и проверяете ваши условия.


Как взять последнюю запись в таблице по конкретному счету и связать ее с записью за предыдущую дату (получается предпоследняя запись), т.к. обороты могут быть с большим разрывом?
5 сен 11, 12:03    [11227377]     Ответить | Цитировать Сообщить модератору
 Re: Требуется совет  [new]
iljy
Member

Откуда:
Сообщений: 8711
Артем11
iljy
Артем11,

и что не получается? Соединяете каждую запись с предыдущей и проверяете ваши условия.


Как взять последнюю запись в таблице по конкретному счету и связать ее с записью за предыдущую дату (получается предпоследняя запись), т.к. обороты могут быть с большим разрывом?

1. ROW_NUMBER() + JOIN
2. Кореллированный подзапрос (select top 1 .... where tt.date < t.date order by date desc)
5 сен 11, 12:10    [11227428]     Ответить | Цитировать Сообщить модератору
 Re: Требуется совет  [new]
Артем11
Member

Откуда:
Сообщений: 3
iljy, Спасибо
5 сен 11, 13:25    [11227991]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить