Сводка TSQL по аккаунтам, как лучше всего подойти к этому? - PullRequest
0 голосов
/ 03 июля 2010

Я пытаюсь суммировать по счету расходы и доход на счет. Есть многократные и доходы и расходы за счет. Я борюсь с этим, так как я все еще изучаю SQL и думал, что кто-то еще, вероятно, уже обратился к этому? Я уверен, что буду признателен за помощь!

Я знаю, что этот код SQL-сервера неверен, но, по крайней мере, он дает более четкое представление о том, что я пытаюсь сделать.

ЕСЛИ (ВЫБЕРИТЕ (OBJECT_ID ('TEMPDB .. # Всего'))) НЕТ НУЛЬ

объявить десятичную @Expenses (13,2), @ десятичная дробь (13,2)

set @expenses = sum (EXP_CHILD_CARE_AMOUNT) + сумма (EXP_FOOD_AMOUNT) + сумма (EXP_LIFE_INSURANCE_AMOUNT) + сумма (EXP_TRANSPORTATION_AMOUNT) + сумма (EXP_TUITION_AMOUNT) + сумма (EXP_USER_2_AMOUNT) + сумма (EXP_USER_3_AMOUNT) + сумма (EXP_UTILITIES_AMOUNT)

set @income = (sum (NET_PAY_AMOUNT) + сумма (OTHER_INCOME_AMOUNT)

ВЫБРАТЬ F.LOAN_NUMBER, @Income, @ Расходы

INTO # Итого ОТ ОТКРЫТИЯ (SvrLink, '

ВЫБЕРИТЕ F.Account, @Income, @Expenses

ОТ ФИНАНСОВ F внутренняя учетная запись a on (a.Account = f.Account) где a.balance> 0

ПОЛУЧИТЬ ТОЛЬКО С UR ')

1 Ответ

0 голосов
/ 03 июля 2010

... ок, если предположить, что некоторые поля сгруппированы в одну таблицу (если нет, то вам просто нужно написать соединения), вам просто нужен 1 запрос(Я хотел бы, чтобы все языки были такими краткими ...) @AccountId - это желаемый идентификатор учетной записи.

SELECT l.LOAN_NUMBER, l.AccountId,
    (SELECT sum(EXP_CHILD_CARE_AMOUNT) + sum(EXP_FOOD_AMOUNT) + 
      sum(EXP_LIFE_INSURANCE_AMOUNT) + sum(EXP_TRANSPORTATION_AMOUNT) + 
      sum(EXP_TUITION_AMOUNT) + sum(EXP_USER_2_AMOUNT) + 
      sum(EXP_USER_3_AMOUNT) + sum(EXP_UTILITIES_AMOUNT) 
      as ExpenseTotal FROM Expenses_Guessing_The_Table_Name
      WHERE AccountId = @AccountId) as ExpenseTotal,
    (SELECT sum(NET_PAY_AMOUNT) + sum(OTHER_INCOME_AMOUNT) as IncomeTotal
      FROM Income_Guessing_The_Table_Name
      WHERE AccountId = @AccountId) as IncomeTotal
    FROM Loans l 
    WHERE  l.AccountId = @AccountId AND l.Balance > 0
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...