Как узнать разницу между суммами столбцов в базе данных?
Записать разность между сумм столбцов в другой столбец в sqlite.
В моем коде ошибка:
misuse of aggregate function Sum()
curs.execute(f'INSERT INTO Финансы (Дата, Кредит, Комментарий) VALUES ("{data}","{summa}","{comm}")')
q = f"Update Финансы set Баланс = Sum(Дебит) - Sum(Кредит)"
Название таблицы - Финансы.
Столбцы - Дата, Кредит(int), Дебит(int), Баланс(int), Комментарий.
Желаемый результат - После ввода значения в столбец Кредит, программа должна суммировать все значения данного столбца, также суммировать все значения столбца Дебит, после программа высчитывает разницу и передает данные в столбец Баланс.
Пример sum(Дебит)=48000, sum(Кредит)=3000, Баланс=45000
Ответы (1 шт):
Автор решения: Oopss
→ Ссылка
Идея такая
data, summa, comm = 0,0,0 # Это условно
credit=int(input('Введите кредит'))
bal=conn.execute('SELECT SUM(Дебет)-SUM(Кредит) FROM Финансы').fetchone()
ibal=bal[0]+credit #Я не знаю здесь складывать или вычитать
conn.execute('INSER INTO Финансы (Дата, Кредит, Баланс, Комментарий) VALUES (?,?,?,?)', (data, summa, ibal, comm))
Я "Дебет" написал, а не "Дебит"
Дата, Кредит, Баланс, Комментарий в поле "Кредит" что нужно вносить в базу?
