Jak to prosto wyliczyć nie komplikując polecenia SQL (mysql)

0

Optymalizuje swój kod i tak się zastanawiam czy można to wyliczyć jednym/ dwoma zapytaniem pierw przedstawie dane a potem co dokładnie mam na myśli :)

sql.jpg

Zakładam że chciałbym wyliczyć dane wiersza 6 czyli muszę zsumować całkowitą ilość jaka weszła do tego wiersza ale bez niego (czyli weszło 10+5=15) następnie muszę zliczyć ile wyszło do tej pozycji ( tutaj wyniesie to 6+2+5 = 13). Może się też tak zdarzyć że następny wiersz_ID 9 będzie wyjściem o wartości 2 do pozycji_ID 10 co będzie oznaczało że suma wyjść wyniesie 15 a nie 13

Czyli muszę uzyskać 2 dane suma wejście i suma wyjście .

Tak myślałem żeby to zrobić w procedurze ale może macie jakieś pomysły jak to zrobić tylko za pomocą instrukcje typu SELECT?

0

@Rafał D:

Wymyśliłem coś takiego na pierwszą część wyliczenia czyli sumę wejść: wiersz 6 czili pozycja_id 51


SELECT SUM(T1.wejscie) FROM tabela AS T1 INNER JOIN tabela AS T2 ON T1.pozycja_id=T2.do_pozycja_id WHERE T1.wiersz_id < (SELECT wiersz_id FROM rs_seal WHERE pozycja_id=51)
1
select p.wiersz_id, p.wejscie, p.wyjscie from (select wiersz_id, sum(wejscie) wejscie
from tabela group by wiersz_id) p
left join (select do_wiersz_id, sum(wyjscie) wyjscie from tabela group by do_wiersz_id) r
on (p.wiersz_id=r.do_wiersz_id)

1 użytkowników online, w tym zalogowanych: 0, gości: 1