Раді Вас бачити! » Увійти » Створити новий профіль

ФЗВ Помогите с SQL запросом

ФЗВ Помогите с SQL запросом
slp

есть значения
1 408.96
2 -414.63
3 563.94
4 -308.73
5 -246.35

мне надо
step
408.96-414.63
1 408.96 0
2 -414.63 -5.67
step
408.96-414.63+563.94
1 408.96 0
2 -414.63 0
3 563.94 558.27
step
408.96-414.63+563.94-308.73
1 408.96 0
2 -414.63 0
3 563.94 249.54
4 -308.73 0
step
408.96-414.63+563.94-308.73-246.35
1 408.96 0
2 -414.63 0
3 563.94 3.19
4 -308.73 0
5 -246.35 0

те я хочу узнать за какой период остался положительный остаток
желательно одним select


   
Re: ФЗВ Помогите с SQL запросом

пусть лучше sql за пивом сбегает
   
Re: ФЗВ Помогите с SQL запросом

Рекомендую звернутися до фахівця
За відповідну оплату, звісно :)
   
Re: ФЗВ Помогите с SQL запросом

есть значения
1 408.96
2 -414.63
3 563.94
4 -308.73
5 -246.35

мне надо
step
408.96-414.63
1 408.96 0
2 -414.63 -5.67
step
408.96-414.63+563.94
1 408.96 0
2 -414.63 0
3 563.94 558.27
step
408.96-414.63+563.94-308.73
1 408.96 0
2 -414.63 0
3 563.94 249.54
4 -308.73 0
step
408.96-414.63+563.94-308.73-246.35
1 408.96 0
2 -414.63 0
3 563.94 3.19
4 -308.73 0
5 -246.35 0

те я хочу узнать за какой период остался положительный остаток
желательно одним select

що за база ? чи тобі на чистому SQL ?
   
Re: ФЗВ Помогите с SQL запросом

 Никакого одного селекта тут не хватит. Нужен WHILE loop.
   
Re: ФЗВ Помогите с SQL запросом
slp

що за база ? чи тобі на чистому SQL ?

postgresql
   
Re: ФЗВ Помогите с SQL запросом

є в тебе таблиця  table

ID , VALUE
1     408.96
2     -414.63
3     563.94
4     -308.73
5    -246.35

Для постгреса

SELECT
    ID,
    VALUE,
    sum(VALUE) OVER (ORDER BY ID) as saldo
FROM table
ORDER BY ID;
   
Re: ФЗВ Помогите с SQL запросом

є в тебе таблиця  table

ID , VALUE
1     408.96
2     -414.63
3     563.94
4     -308.73
5    -246.35

Для постгреса

SELECT
    ID,
    VALUE,
    sum(VALUE) OVER (ORDER BY ID) as saldo
FROM table
ORDER BY ID;


 Ему надо на каждом этапе а не за все транзакции.
   
Re: ФЗВ Помогите с SQL запросом

Ему надо на каждом этапе а не за все транзакции.

сума всіх на кожному етапі як в старпості
нехай спробує 99.9999%  то що я написав це те що йому потрібно
   
Re: ФЗВ Помогите с SQL запросом

сума всіх на кожному етапі як в старпості
нехай спробує 99.9999%  то що я написав це те що йому потрібно

 А, спасибо, не знал про OVER.
   
Re: ФЗВ Помогите с SQL запросом

Рекомендую звернутися до фахівця
За відповідну оплату, звісно :)
бо забездурно Вам такої х-ні понаписують :)
   
Re: ФЗВ Помогите с SQL запросом

SELECT
    "ID",
    "VALUE",
    sum("VALUE") OVER (ORDER BY "ID") as saldo
FROM table1
ORDER BY "ID";

ID,   VALUE,   saldo
1,    408.96,     408.96
2,    -414.63,    -5.67
3,     563.94,     558.27
4,    -308.73,     249.54
5,    -246.35,     3.19
   
Re: ФЗВ Помогите с SQL запросом

А, спасибо, не знал про OVER.

тому і питав що за база :-)
   
Re: ФЗВ Помогите с SQL запросом

Примерно в таком ключе если одним запросом:
SELECT a.value, @sm := @sm + a.value FROM table a, (SELECT @sm := 0) r;
   
Re: ФЗВ Помогите с SQL запросом

Примерно в таком ключе если одним запросом:
SELECT a.value, @sm := @sm + a.value FROM table a, (SELECT @sm := 0) r;

база постгрес, а не мускуль, і скрипт для постгреса вже запостив :-)

   
Re: ФЗВ Помогите с SQL запросом
slp

бо забездурно Вам такої х-ні понаписують :)

я сам программист баз данных
   
Re: ФЗВ Помогите с SQL запросом

SELECT
    "ID",
    "VALUE",
    sum("VALUE") OVER (ORDER BY "ID") as saldo
FROM table1
ORDER BY "ID";

ID,   VALUE,   saldo
1,    408.96,     408.96
2,    -414.63,    -5.67
3,     563.94,     558.27
4,    -308.73,     249.54
5,    -246.35,     3.19

slp , то що там ?
   
Re: ФЗВ Помогите с SQL запросом

я сам программист баз данных


 :-B  колега, я був прогр. БД років з десять .. поки не закохався в python
   
Re: ФЗВ Помогите с SQL запросом

тому і питав що за база :-)

 Уже полгода с POSTGRES не работаю. На AWS хитрая CQRS на базе DynamoDB, Redis, Elasticsearch.
   
Re: ФЗВ Помогите с SQL запросом
slp

SELECT
    "ID",
    "VALUE",
    sum("VALUE") OVER (ORDER BY "ID") as saldo
FROM table1
ORDER BY "ID";

ID,   VALUE,   saldo
1,    408.96,     408.96
2,    -414.63,    -5.67
3,     563.94,     558.27
4,    -308.73,     249.54
5,    -246.35,     3.19

не совсем то

мне надо чтобы в итоге в id=3 saldo 3.19
в остальных id saldo=0
   
Re: ФЗВ Помогите с SQL запросом
slp

:-B  колега, я був прогр. БД років з десять .. поки не закохався в python

что значит питон без баз данных
ведь в итоге все мы делаем для sql серверов
   
Re: ФЗВ Помогите с SQL запросом

Стільки, билять, вумних а скіна нормально для фупу переписати нікому
   
Re: ФЗВ Помогите с SQL запросом
slp

Стільки, билять, вумних а скіна нормально для фупу переписати нікому

чтобы здесь вольно резвились ватники, сомневающийся* всех мастей ?
   
Re: ФЗВ Помогите с SQL запросом

Уже полгода с POSTGRES не работаю. На AWS хитрая CQRS на базе DynamoDB, Redis, Elasticsearch.

Зоопарк, і практично нічого з цього базою не назвеш в класичному розумінні
   
Re: ФЗВ Помогите с SQL запросом

Зоопарк, і практично нічого з цього базою не назвеш в класичному розумінні

 Там логи проектируются Redis. Можно восстановить состояние в любой точки времени всего.
   
Re: ФЗВ Помогите с SQL запросом

Там логи проектируются Redis. Можно восстановить состояние в любой точки времени всего.

а ну якщо логи і хайлоад і не потрібно якоїсь логіки на БД то такий зоопарк якраз те з чим собі можна моск поєпати
   
Re: ФЗВ Помогите с SQL запросом

не совсем то

мне надо чтобы в итоге в id=3 saldo 3.19
в остальных id saldo=0

якесь дивне бажання,давай повніше опиши ТЗ і чому саме в ID=3
   
Re: ФЗВ Помогите с SQL запросом

Афигенная постановка задачи - ни что это за значения (остатки, обороты), ни где здесь период. Чтобы грамотно сформулировать задачу, используйте все средства родного языка.
   
Re: ФЗВ Помогите с SQL запросом
slp

якесь дивне бажання,давай повніше опиши ТЗ і чому саме в ID=3

value - это цифры долга за по периодам
мне надо узнать за какой период остался долг
в данном случае это период id=3
   
Re: ФЗВ Помогите с SQL запросом
slp

value - это цифры долга за по периодам
мне надо узнать за какой период остался долг

value - это цифры долга за период
id номер периода

мне надо узнать за какой период остался долг
   
Re: ФЗВ Помогите с SQL запросом

value - это цифры долга за период
id номер периода

мне надо узнать за какой период остался долг

"Цифры долга за период" - это что за терминология? Какждый что захочет, то и поймет под этим.
   
Re: ФЗВ Помогите с SQL запросом

"Цифры долга за период" - это что за терминология? Какждый что захочет, то и поймет под этим.

Т.е. это остаток долга на каждыую дату или изменение долга за каждую дату? Мля, есть же общепринятые термины, почему их не использовать?
   
Re: ФЗВ Помогите с SQL запросом
slp

"Цифры долга за период" - это что за терминология? Какждый что захочет, то и поймет под этим.

вам какая разница ?
просто некое число

это же не влияет на текст запроса
   
Re: ФЗВ Помогите с SQL запросом
slp

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

долг за период с 1 по 30 число месяца
каждый месяц это период
   
Re: ФЗВ Помогите с SQL запросом

Если это таблица изменений, то тогда так. Соединяешь таблицу саму с собой по условию id1<=id2, группируешь по старшему периоду с суммированием value, на выходе ставишь нужное условие на полученные суммы (>0).
   
Re: ФЗВ Помогите с SQL запросом

долг за период с 1 по 30 число месяца
каждый месяц это период

Если остаток долга, то простой select с условием value>0
   
Re: ФЗВ Помогите с SQL запросом

вам какая разница ?
просто некое число

это же не влияет на текст запроса

Это влияет на логику запроса и как следствие - на текст. Сальдо это или обороты?
Ты можешь сформулировать задачу языком учёта? Или бухгалтерии?
   
Re: ФЗВ Помогите с SQL запросом
slp

Если это таблица изменений, то тогда так. Соединяешь таблицу саму с собой по условию id1<=id2, группируешь по старшему периоду с суммированием value, на выходе ставишь нужное условие на полученные суммы (>0).

пример sql запроса можно ?
   
Re: ФЗВ Помогите с SQL запросом
slp

Это влияет на логику запроса и как следствие - на текст. Сальдо это или обороты?
Ты можешь сформулировать задачу языком учёта? Или бухгалтерии?

есть некий долг
мне надо разбить этот долг по периодам возникновения

те 100 грн

долг
1 мес 3 грн
>1 мес-6 мес 10 грн
>6 мес-1 год 0 грн
...

> 3 лет 55 грн

бухи называют это анализ дебиторской задолженности
   
Re: ФЗВ Помогите с SQL запросом

пример sql запроса можно ?

Если у тебя остатки (я уже понял это из контекста разговора), то тогда так:

SELECT
    ID as MyPERIOD,
    VALUE AS Positiv_Dolg,
FROM [Yor_Fucking_Table]
WHERE VALUE>0;

Если надо первый период с положительным остатком, то

SELECT FIRST 1
    ID as MyPERIOD,
    VALUE AS Positiv_Dolg,
FROM [Yor_Fucking_Table]
WHERE VALUE>0
ORDER BY MyPeriod

Если обороты - влом писать.
   

Цю тему переглядають:

0 Користувачів і 1 гість
 
Повна версія