Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Access
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 01.09.2010, 02:45   #1
Informer
Пользователь
 
Регистрация: 21.11.2007
Сообщений: 11
Печаль Прибыль за предыдущий день

Помогите пожалуйста решить такую проблему:
Есть таблица которая состоит с 3 столбцов, "Дата", "Сумма", "Прибыль". Выглядит примерно так:

Дата________Сумма ______Прибыль
01.09.10_____2500
02.09.10_____2000
03.09.10_____3000
04.09.10_____3500
05.09.10_____5000

Как сделать так, чтоб, Сумма 01.09.10 отнималась от 02.09.10 и вставлялась в Прибыль за 02.09.10.
Соответственно Сумма 02.09.10 отнималась от 03.09.10 и вставлялась в Прибыль за 03.09.10 и т.д.

Т.е. выглядеть должно так

Дата________Сумма ______Прибыль
01.09.10_____2500________
02.09.10_____2000________-500
03.09.10_____3000________1000
04.09.10_____3500________500
05.09.10_____5000________1500
Informer вне форума Ответить с цитированием
Старый 01.09.2010, 05:41   #2
D.Shibanov
Пользователь
 
Регистрация: 01.09.2010
Сообщений: 28
По умолчанию

Этот расчет необходимо делать одномоментно или каждый день?
Т.е. расчет сразу по всей таблице или только по одной строке в день?
D.Shibanov вне форума Ответить с цитированием
Старый 01.09.2010, 12:49   #3
Informer
Пользователь
 
Регистрация: 21.11.2007
Сообщений: 11
По умолчанию

Цитата:
Сообщение от D.Shibanov Посмотреть сообщение
Этот расчет необходимо делать одномоментно или каждый день?
Т.е. расчет сразу по всей таблице или только по одной строке в день?
По одной строке в день
Informer вне форума Ответить с цитированием
Старый 02.09.2010, 06:34   #4
D.Shibanov
Пользователь
 
Регистрация: 01.09.2010
Сообщений: 28
По умолчанию

Для простого запроса можно попробовать что-нибудь вроде:
Код:
UPDATE Таблица, [SELECT Сумма AS Вчера FROM Таблица WHERE (((Дата)=Date()-1))]. AS Yest 
SET Прибыль = [Сумма]-[Вчера]
WHERE (((Дата)=Date()));
Если Вы используете для ввода данных форму, то конечно лучше прописать там. Но код будет отличаться.
На мой взгляд это удобнее, да и не "гигиенична" работа с таблицей напрямую (я о вводе данных).

Последний раз редактировалось D.Shibanov; 02.09.2010 в 06:38.
D.Shibanov вне форума Ответить с цитированием
Старый 02.09.2010, 19:13   #5
Teslenko_EA
Участник клуба
 
Регистрация: 10.08.2009
Сообщений: 1,796
По умолчанию

Здравствуйте Informer
Имея таблицу с полями Дата и Сумма, поле Прибыль может формироваться запросом а не существовать в таблице.
Код:
SELECT Таблица1.Дата, Таблица1.Сумма, [Сумма]-(SELECT TOP 1 T.Сумма 
FROM Таблица1 AS T WHERE T.Дата < Таблица1.Дата ORDER BY T.Дата DESC;) AS Прибыль
FROM Таблица1
(Вы с avduevsky не родственники ? )
Евгений.
Teslenko_EA вне форума Ответить с цитированием
Старый 03.09.2010, 11:47   #6
Informer
Пользователь
 
Регистрация: 21.11.2007
Сообщений: 11
По умолчанию

Цитата:
Сообщение от Teslenko_EA Посмотреть сообщение
Здравствуйте Informer
Имея таблицу с полями Дата и Сумма, поле Прибыль может формироваться запросом а не существовать в таблице.
Код:
SELECT Таблица1.Дата, Таблица1.Сумма, [Сумма]-(SELECT TOP 1 T.Сумма 
FROM Таблица1 AS T WHERE T.Дата < Таблица1.Дата ORDER BY T.Дата DESC;) AS Прибыль
FROM Таблица1
(Вы с avduevsky не родственники ? )
Евгений.
Очень даже близкие
Informer вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Запускается предыдущий файл .ехе Володя22 C++ Builder 1 28.03.2010 19:38
Царевна-лягушка съедает ежедневно на 20% комаров больше, чем в предыдущий день beliy13 Помощь студентам 2 29.11.2009 18:02
определить день недели по заданному числу (считать в месяце 30 дней и первый день месяца понедельник dan1991 Помощь студентам 1 01.03.2009 20:59