У меня есть 3 стола. Счет. Транс и Баланс.Баланс Отрицательный на 3 месяца
Предположим, что учетная запись имеет только 2 счета. Номер счета 1 и 2.
Оба они имеют несколько транзакций в таблице Trans.
Сумма в таблице Trans равна балансу в любой момент времени для каждой учетной записи.
Пример: У учетной записи 1 и 2 у обоих было 50 долларов США. Счет 1 сделал транзакции за 100 долларов США, а счет 2 - транзакции только за 35 долларов.
Теперь учетная запись 1 имеет баланс отрицательных $ 50. Скажем, он депонировал 20 долларов. Несмотря на это, баланс по-прежнему отрицательный.
Мне нужен запрос, который проверяет, что баланс отрицательный для последовательных 3 месяцев или более с сегодняшней даты. (так что sysdate всякий раз, когда я запускаю это). Хотя у него был депозит в размере 20 долларов, баланс по-прежнему отрицательный.
Когда я использую transdate from trans table или lastupdate из таблицы баланса в качестве критерия 3 месяца, вышеуказанная учетная запись НЕ подбирается. Хотя, это отрицательно, но он видит транзакцию.
Мне было интересно, как я могу запросить, где будет отображаться номер счета и баланс, только если он будет отрицательным в течение 3 или более месяцев независимо от того, когда произойдет транзакция.
Колонны:
Account Table has AccountID
Trans Table has AccountID, Amount, TransDate
Balance Table has AccountID, Balance, LastUpdate
Благодаря
Update
Trans Table
Select * from trans where accountid = 1;
Transdate Merchant Amount AccountID
10/1/16 Employer 50 1
10/4/16 Walmart -20 1
10/7/16 Kroger -50 1
Теперь его счет пошел отрицательный - $ 20 на 10/7/2016.
Transdate Merchant Amount AccountID
12/01/16 Employer 10 1
Его счет по-прежнему отрицательный. Если я запустил запрос сегодня (01/15/2017) или позже, его учетная запись должна быть поднята, потому что он по-прежнему имеет отрицательный баланс не менее 90 дней.
Balance Table
Он хранит только 1 запись на одну учетную запись. На сегодняшний день, она показывает следующее:
AccountID Balance LastUpdate
1 -10 12/01/2016
LastUpdate является тот же день, как на последнюю дату совершения операции в Trans таблице для этого счета.
Я схожу с ума от того, как найти учетные записи, которые были отрицательными в течение 90 дней или более, даже если последний депозит пришел вчера, но счета по-прежнему отрицательны. У меня есть 50 000 учетных записей, которые мне нужно сделать для ....
Можете ли вы предоставить нам некоторые данные? –
Я не вижу ни одной колонки, указывающей тип транзакции (депозит или снятие средств). Как рассчитать баланс из таблицы Trans? – Hawk
Просьба указать [Минимальный, полный и проверенный пример данных в ваших таблицах] (http://stackoverflow.com/help/mcve) – krokodilko