PL/SQL (raczej proste)
Prawdziwa Blondynka - 03-07-2006 00:03
PL/SQL (raczej proste)
Witam, mam tabele opisujaca transakcje finansowe, posiadajaca kolumny: stan, kwota_netto, kwota_podatku. W kolumnie "stan" rekordy posiadaja jedna z nastepujacych wartosci: "otwarte", "odrzucone", "odwolane", "zaplacone"; kwota_netto i kwota_brutto zawieraja sumy zwiazane z kazda transakcja. Wszystkie transakcje sa najpierw otwierane, a potem moga byc odrzucone, odwolane, zaplacone (ale moga tez pozostac otwarte). Kazda czynnosc wiaze sie z dodaniem rekordu do bazy; rekordy nie sa nigdy usuwane z tabel. Mam juz zapytanie, ktore listuje mi sumy wszystkich rekordow otwartych, odrzuconych, odwolanych i zaplaconych (tzn. w jego wyniku otrzymuje np: stan: otwarte ilosc: 8, suma_netto: 234 suma_podatku: 23.4). Jak w PL/SQL napisac takiego SELECTa, ktory mi znajdzie wszystkie transakcje, ktore byly otwarte i czesciowo zaplacone (tzn. transkacja zwiazana z zaplaceniem nie pokryla caloscisumy, na jaka opiewala transakcja otwierajaca), i wyswietli je w taki sam sposob jak powyzsze zapytanie, czyli mniej wiecej: stan: do pokrycia ilosc: 2, suma_netto: 23 suma_podatku: 2.3
Dziekuje i pozdrawiam, Prawdziwa Blondynka
Chce napisac zapytanie, ktore mi znajdzie
-- Wysłano z serwisu OnetNiusy: http://niusy.onet.pl
KRASNAL - 04-07-2006 00:57
a może być płacone w ratach? :)
orzesznica@poczta.onet.pl - 04-07-2006 00:57
> Witam, > mam tabele opisujaca transakcje finansowe, posiadajaca kolumny: stan, > kwota_netto, kwota_podatku. > W kolumnie "stan" rekordy posiadaja jedna z nastepujacych wartosci: "otwarte", > "odrzucone", "odwolane", "zaplacone"; kwota_netto i kwota_brutto zawieraja sumy > zwiazane z kazda transakcja. > Wszystkie transakcje sa najpierw otwierane, a potem moga byc odrzucone, > odwolane, zaplacone (ale moga tez pozostac otwarte). Kazda czynnosc wiaze sie z > dodaniem rekordu do bazy; rekordy nie sa nigdy usuwane z tabel. > Mam juz zapytanie, ktore listuje mi sumy wszystkich rekordow otwartych, > odrzuconych, odwolanych i zaplaconych (tzn. w jego wyniku otrzymuje np: > stan: otwarte ilosc: 8, suma_netto: 234 suma_podatku: 23.4). Jak w PL/SQL > napisac takiego SELECTa, ktory mi znajdzie wszystkie transakcje, ktore byly > otwarte i czesciowo zaplacone (tzn. transkacja zwiazana z zaplaceniem nie > pokryla caloscisumy, na jaka opiewala transakcja otwierajaca), i wyswietli je w > taki sam sposob jak powyzsze zapytanie, czyli mniej wiecej: > stan: do pokrycia ilosc: 2, suma_netto: 23 suma_podatku: 2.3 > > Dziekuje i pozdrawiam, > Prawdziwa Blondynka >
Witam
Jeśli dobrze zrozumialem to potrzebne jest co takiego
select count(distinct transakcja), sum(case when stan = 'otwarte' then 1 else -1 end * kwota netto) from transakcje where stan in ('otwarte', 'zaplacone') having sum(case when stan = 'otwarte' then 1 else -1 end * kwota netto) > 0
Slaw
-- Wysłano z serwisu OnetNiusy: http://niusy.onet.pl
zanotowane.pldoc.pisz.plpdf.pisz.pleffulla.pev.pl
|
jak to =?ISO-8859-2?Q?zrobi=E6=2E=2E=2E=3F_TSQL_sql_server?==?ISO-8859-2?Q?_?=
Jak =?windows-1250?Q?pobra=E6_szacowan=B9_wielko=9C=E6_zbiory_wy nikowego_w_MS?==?windows-1250?Q?_SQL_2005=3F?=
=?iso-8859-2?Q?=5BMS_SQL=5D_Czy_mo=BFna_wywo=B3a=E6_funkcje_t ylko_raz_dla?==?iso-8859-2?Q?_ca=B3ego_zbioru_=BCr=F3d=B3owego=3F?=
[MSSQL] =?ISO-8859-2?Q?zgodno=B6ci_z_licencjami_Microsoft_?==?ISO-8859-2?Q?SQL_Server?=
=?ISO-8859-2?Q?k=B3opot_z_uruchomieniem_MY_SQL_dla_C?==?ISO-8859-2?Q?MS_i_CRM_na_Fedora_Core_3?=
[MSSQL] ACCESS - SQL =?ISO-8859-2?Q?B=B3ad_w_konwersji_lic?==?ISO-8859-2?Q?zb?=
=?iso-8859-2?Q?=5Bmssql=5D_Zapytania_rekurencyjne__-_czy_sk=B3adnia_sql?==?iso-8859-2?Q?_co=B6_takiego_przewiduje_=3F?=
=?iso-8859-2?Q?=5BMySQL=5D_Co_minimalnie_potrzebne_zeby_mie=E 6_klienta_My?==?iso-8859-2?Q?SQL_na_Linuxie=3F?=
[newbie] MS SQL - praca =?ISO-8859-2?Q?jednocze=B6nie_na_2_?==?ISO-8859-2?Q?bazach_=28linkowanie_=3F=29?=
ms sql server - =?ISO-8859-2?Q?domy=B6lny_format_kolumn_ty?==?ISO-8859-2?Q?pu_datetime?=
zanotowane.pldoc.pisz.plpdf.pisz.pllisinski.htw.pl
Cytat
Decede mihi sole - nie zasłaniaj mi słonca. Gdy kogoś kochasz, jesteś jak stworzyciel świata - na cokolwiek spojrzysz, nabiera to kształtu, wypełnia się barwą, światłem. Powietrze przytula się do ciebie, choćby był mróz, a ty masz w sobie tyle radości, że musisz ją rozdawać wokoło, bo się w tobie nie mieści Hoc fac - tak czyń. A tergo - od tyłu; z tyłu. I czarne włosy posiwieją. Safona |
|