Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Нарастающая сумма / 11 сообщений из 11, страница 1 из 1
01.06.2008, 10:46
    #35347546
zpsz
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нарастающая сумма
Здравствуйте, помогите составить sql запрос.
Существует таблица
2
3
1
7
4
Нужно получить таблицу вида
2 2
3 5
1 6
7 13
4 17
За ранее благодарю.
...
Рейтинг: 0 / 0
01.06.2008, 10:55
    #35347548
QQs
QQs
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нарастающая сумма
Так сложноватисто будет. А уникального ID нет ?
...
Рейтинг: 0 / 0
01.06.2008, 11:12
    #35347552
Dag
Dag
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нарастающая сумма
непонятен принцип формирования искомой таблицы
...
Рейтинг: 0 / 0
01.06.2008, 12:10
    #35347569
Dag
Dag
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нарастающая сумма
Принцип понял. А нужен именно sql запрос или достаточно будет просканировать таблицу?
...
Рейтинг: 0 / 0
01.06.2008, 12:41
    #35347583
zpsz
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нарастающая сумма
Нужен именно sql запрос
...
Рейтинг: 0 / 0
01.06.2008, 17:03
    #35347760
MaestroEv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нарастающая сумма
C пользовательской функцией пойдет?


public gp
gp=-aaa
select aaa,sss1() as bbb from table1 into curs bbb
browse


function sss1
gp=gp+aaa
return gp
...
Рейтинг: 0 / 0
01.06.2008, 17:28
    #35347774
vklepko
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нарастающая сумма
Решение на T-SQL поможет?
...
Рейтинг: 0 / 0
02.06.2008, 09:54
    #35348262
DmGr
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нарастающая сумма
Может так пойдет

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
CREATE CURSOR cur1 (dd d, nn int )

INSERT INTO cur1 (dd, nn) VALUES (DATE(),  1 )
INSERT INTO cur1 (dd, nn) VALUES (DATE()+  1 ,  2 )
INSERT INTO cur1 (dd, nn) VALUES (DATE()+  2 ,  3 )
INSERT INTO cur1 (dd, nn) VALUES (DATE()+  3 ,  4 )

SELECT a.dd, a.nn, sum(b.nn) ;
FROM cur1 a ;
FULL JOIN cur1 b ON a.dd >= b.dd ;
GROUP BY a.dd
...
Рейтинг: 0 / 0
02.06.2008, 10:30
    #35348333
GoshaS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нарастающая сумма
Как пример, скажем сумма выручки "dohod " и дата выручки "date" у некоторой торговой точки
нарастающий итог по доходам за квартал будет рассчитан примерно так:
Код: plaintext
1.
2.
3.
4.
select date, dohod as sumDohod, (select summ(dohod ) from tableMy OutT where outT.date<=inT.date) as sumNar
from tableMy inT
where date between '2008-01-01' and '2008-03-31'
order by date
...
Рейтинг: 0 / 0
02.06.2008, 10:35
    #35348348
GoshaS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нарастающая сумма
упс, не включил еще одно условие, так точно за квартал посчитает :)
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
select date, dohod as sumDohod, 
(
select summ(dohod ) 
from tableMy OutT where outT.date between '2008-01-01'  and inT.date
) as sumNar
from tableMy inT
where date between '2008-01-01' and '2008-03-31'
order by date
...
Рейтинг: 0 / 0
05.06.2008, 22:58
    #35358058
LR1
LR1
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нарастающая сумма
zpszНужен именно sql запрос
Так сойдет?
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
CLOSE DATABASES all
CREATE CURSOR source (f1 i)
INSERT INTO source VALUES ( 2 )
INSERT INTO source VALUES ( 3 )
INSERT INTO source VALUES ( 1 )
INSERT INTO source VALUES ( 7 )
INSERT INTO source VALUES ( 4 )


SELECT f1, IIF(TYPE("m.a")="U",IIF(ISNULL(_vfp.DoCmd("local m.a") ;
	AND _vfp.DoCmd("m.a=0")), 00 , 00 ), ;
	IIF(ISNULL(_vfp.DoCmd("m.a=IIF(RECNO()=1,f1,m.a+f1)")),m.a,m.a)) as sum ;
	FROM source
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Нарастающая сумма / 11 сообщений из 11, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]