Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Muke sa zagradama u upitu!!!

[es] :: Access :: Muke sa zagradama u upitu!!!

[ Pregleda: 3341 | Odgovora: 15 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

tanjakg81
Tanja Radovic
Kragujevac

Član broj: 77560
Poruke: 37
*.verat.net.



Profil

icon Muke sa zagradama u upitu!!!18.03.2006. u 21:38 - pre 220 meseci
Pokusavam da napravim jedan ugnezdeni upit,ali mi stalno javlja gresku oko zagrada kod WHERE.
Upit je sledeci :

SELECT IDnaloga, datumNaloga, Skonto,potrazuje,duguje, (SELECT Sum(potrazuje)-Sum(duguje)
FROM tblNalog AS prvi
WHERE ((prvi.IDnaloga<=drugi.IDnaloga))
AND ((prvi. datumNaloga<=drugi.datumNaloga))
GROUP BY prvi.IDnaloga,prvi.datumNaloga) AS Saldo
FROM tblNalog AS drugi
GROUP BY drugi.IDnaloga, drugi.datumNaloga;


Nisam jos ni sigurna da ce upit raditi ono sto sam zamislila, ali za sad mi je problem samo oko zagrada..
Pravila sam razne kombinacije, ali nista...
Gde sam pogresila?
 
Odgovor na temu

goranvuc
Goran Vucicevic
Novi Sad

Član broj: 4934
Poruke: 1846
*.neobee.net.



+41 Profil

icon Re: Muke sa zagradama u upitu!!!18.03.2006. u 21:51 - pre 220 meseci
Ako dobro vidim nije ti potrebna GROUP BY klauzula ni u glavnom delu upita, a ni u ugnjezdenom delu (ne ulazim u ono sto hoces da dobijes, pretpostavljam da je u pitanju Running Sum za Saldo):
Code:

SELECT IDnaloga, datumNaloga, Skonto, potrazuje, duguje, 
(SELECT Sum(potrazuje)-Sum(duguje) FROM tblNalog AS prvi
WHERE ((prvi.IDnaloga<=drugi.IDnaloga)) 
AND ((prvi. datumNaloga<=drugi.datumNaloga))) AS Saldo 
FROM tblNalog AS drugi;


Inace, na vecem broju podataka ovo ce ti vrrrrrlo spoooooro raaaaaditi!
 
Odgovor na temu

tanjakg81
Tanja Radovic
Kragujevac

Član broj: 77560
Poruke: 37
*.verat.net.



Profil

icon Re: Muke sa zagradama u upitu!!!18.03.2006. u 22:39 - pre 220 meseci
Ne radi ni ovo.Opet javlja istu gresku!
 
Odgovor na temu

goranvuc
Goran Vucicevic
Novi Sad

Član broj: 4934
Poruke: 1846
*.neobee.net.



+41 Profil

icon Re: Muke sa zagradama u upitu!!!19.03.2006. u 07:55 - pre 220 meseci
Nisam video da si stavila nepotrebne zagrade:
Code:

SELECT IDnaloga, datumNaloga, Skonto, potrazuje, duguje, 
(SELECT Sum(potrazuje)-Sum(duguje) FROM tblNalog AS prvi
WHERE prvi.IDnaloga<=drugi.IDnaloga AND prvi.datumNaloga<=drugi.datumNaloga) AS Saldo FROM tblNalog AS drugi;


Sad kad sam ispravljao video sam da si kod "prvi.datumNaloga<=drugi.datumNaloga" imala visak Space karakter "prvi. datumNaloga". Ako je i kod tebe tako onda je to greska!
 
Odgovor na temu

tanjakg81
Tanja Radovic
Kragujevac

Član broj: 77560
Poruke: 37
*.verat.net.



Profil

icon Re: Muke sa zagradama u upitu!!!19.03.2006. u 09:54 - pre 220 meseci
Jeste,tu sam pogresila,videla sam to kasnije, ali mi upit ne radi kako sam htela.
Problem je sad sto mi se ponavljaju vrednosti za IDnaloga i datumNaloga pa mi uslov nije dobar.
Treba mi neki drugi kriterijum, ali da bude jedinstven za vrste,jel da?
Razmisljala sam da ubacim neku kolonu sa rednim brojem vrste ali ne poznajem dovoljno sintaksu, naslucujem da bih mozda mogla nesto sa COUNT..ali nisam sigurna...
Mozes li da mi pomognes?
Jos nesto, rekao si da to moze sporo da radi, jer to samo u Accessu problem ili uopste?
 
Odgovor na temu

goranvuc
Goran Vucicevic
Novi Sad

Član broj: 4934
Poruke: 1846
*.neobee.net.



+41 Profil

icon Re: Muke sa zagradama u upitu!!!19.03.2006. u 10:36 - pre 220 meseci
Vidi, da bih mogao da ti pomognem, treba mi informacija o strukturi tabela koje su u igri, tj. moras malo detaljnije opisati problem. To sto ce raditi sporo nema veze sa Access-om vec sto je upit tako postavljen da se pri izvrsenju za svaki red koji vraca izvrsava i ovaj sumarni upit za saldo, sto je na odredjenom broju redova potencijalni problem.
 
Odgovor na temu

tanjakg81
Tanja Radovic
Kragujevac

Član broj: 77560
Poruke: 37
*.verat.net.



Profil

icon Re: Muke sa zagradama u upitu!!!19.03.2006. u 11:06 - pre 220 meseci
Upit postavljam nad upitom ove strukture:


IDnal datumNal Skonto Duguje Potrazuje
1 2.2.2006 DOBAVLJACI U ZEMLJI 54.236,00 Din. 0,00 Din.
2 4.2.2006 DOBAVLJACI U ZEMLJI 0,00 Din. 13.890,00 Din.
3 6.2.2006 KUPCI U ZEMLJI 203.946,00 Din. 0,00 Din.
3 6.2.2006 DOBAVLJACI U ZEMLJI 0,00 Din. 678,00 Din.
4 7.2.2006 KUPCI U ZEMLJI 12.000,00 Din. 77.692,00 Din.
4 7.2.2006 DOBAVLJACI U ZEMLJI 13.890,00 Din. 67.834,00 Din.
5 8.2.2006 KUPCI U ZEMLJI 72.000,00 Din. 0,00 Din.
5 8.2.2006 DOBAVLJACI U ZEMLJI 0,00 Din. 7.345,00 Din.



A,sa onim kodom dobijam sledece:

IDnal datumNal Skonto Duguje Potrazuje Saldo
1 2.2.2006 DOBAVLJACI U ZEMLJI 54.236,00 Din. 0,00 Din. 54.236,00 Din.
2 4.2.2006 DOBAVLJACI U ZEMLJI 0,00 Din. 13.890,00 Din. 40.346,00 Din.
3 6.2.2006 KUPCI U ZEMLJI 203.946,00 Din. 0,00 Din. 243.614,00 Din.
3 6.2.2006 DOBAVLJACI U ZEMLJI 0,00 Din. 678,00 Din. 243.614,00 Din.
4 7.2.2006 KUPCI U ZEMLJI 12.000,00 Din. 77.692,00 Din. 123.978,00 Din.
4 7.2.2006 DOBAVLJACI U ZEMLJI 13.890,00 Din. 67.834,00 Din. 123.978,00 Din.
5 8.2.2006 KUPCI U ZEMLJI 72.000,00 Din. 0,00 Din. 188.633,00 Din.

Kapiram da je greska u postavljenom uslovu za ugnjezdeni upit, ali ne vidim da na osnovu ovih kolona mogu da dobijem ono sto hocu.Razmisljala sam da ubacim jos jednu kolonu sa rednim brojem vrste pa na osnovu nje da postavim uslov u ugnjezdenom upitu, ali ne znam kako to da izvedem?Da li razumes sta mi treba?
 
Odgovor na temu

goranvuc
Goran Vucicevic
Novi Sad

Član broj: 4934
Poruke: 1846
212.200.124.*



+41 Profil

icon Re: Muke sa zagradama u upitu!!!19.03.2006. u 15:58 - pre 220 meseci
Pretpostavljam da hoces da dobijes nesto tipa "Kartica partnera". Da bi ti upit prikazao podatke onako kako hoces moras da imas uredjenost po polju koje je jedinstveno na nivou sloga (zapisa, vrste, reda, rekorda ... - sinonimi). Posto je u pitanju kartica (nadam se), onda je logicno da se podaci prikazuju hronoloski, sto znaci da je idealan kandidat polje datumNal. Naravno, problem je sto se jedan isti datum moze pojaviti vise puta, tako da mora jos nesto da se ukljuci u igru. U skladu sa tim, ti si u WHERE deo ukljucila i IDNal, ali i dalje nisi resila problem. Mogla si da ukljucis i polje SKonto u WHERE deo, ali opet bi ti se kad tad pojavio slucaj ponavljanja, pa onda ukljucis i Duguje i Potrazuje...

Idealno bi bilo da je u polje datumNal upisivano vreme, a ne samo datum, ali posto tako nesto nema smisla, potencijalno resenje bi bilo da si u upit ukljucila i ID stavke naloga (ako ga imas, nisi navela kompletnu postavku), ali ovaj problem se obicno resava u praksi aplikativno (kada je u pitanju Access jedina mogucnost) ili preko Stored Procedure (MS SQL Server...). Ako si perfekcionista, ne postoji upit koji bi 100% resio problem.

Toliko od mene, mozda se javi neko sa nekom drugom idejom.

Eh, da li si ispitala slucajeve kada se podaci unose retroaktivno, pa je moguce da nalog sa vecim ID-om sadrzi starije promene od onog sa manjim ID-om? Takodje, kako ces sortirati u ovom slucaju podatke? Za test uvek uzmi najgori moguci slucaj pojave podataka, a ne idealan!

[Ovu poruku je menjao goranvuc dana 19.03.2006. u 17:03 GMT+1]
 
Odgovor na temu

Zidar
Canada

Moderator
Član broj: 15387
Poruke: 3085
*.eqao.com.



+79 Profil

icon Re: Muke sa zagradama u upitu!!!20.03.2006. u 13:54 - pre 220 meseci
Goran je potpuno u pravu.

Medjutim, pokusaj da runnig sum potpuno izbacis iz upita i da to odradis na reportu. Prouci u Helpu RunningSum property na reportima. Sluzi upravo za ovakve stvari. Pogleaj po forumu primere aplikacija koje smo ostavili. Verovatno da postoji bar jedan report sa running sum.

Izmena:
Evo sad videh da u top temi Baza Znanja, poslednji post, postavio SBing, upucuje na jednu od prethodnih tema na forumu sa running sum reprotom.



[Ovu poruku je menjao Zidar dana 20.03.2006. u 14:57 GMT+1]
 
Odgovor na temu

tanjakg81
Tanja Radovic
Kragujevac

Član broj: 77560
Poruke: 37
*.verat.net.



Profil

icon Re: Muke sa zagradama u upitu!!!20.03.2006. u 15:19 - pre 220 meseci
Ali,ja sam zamislila da mi to bude forma (Datasheet),a ne report.
Jel moguce slicno uraditi i za formu?
 
Odgovor na temu

Zidar
Canada

Moderator
Član broj: 15387
Poruke: 3085
*.eqao.com.



+79 Profil

icon Re: Muke sa zagradama u upitu!!!20.03.2006. u 18:40 - pre 220 meseci
nazalost, running sum za formu ne psotoji onako elegantno resen kao za reporte. Da li sis sigurna da ti bas teba datasheet forma? Ne znamo tacno kakva ti je baza i sta tacno pokusavas da uradis pa mozemo i nehotice pogresno da te savetujemo od ove tacke nadalje.
 
Odgovor na temu

tanjakg81
Tanja Radovic
Kragujevac

Član broj: 77560
Poruke: 37
*.verat.net.



Profil

icon Re: Muke sa zagradama u upitu!!!20.03.2006. u 20:00 - pre 220 meseci
Evo kako izgleda baza!
Prikačeni fajlovi
 
Odgovor na temu

tanjakg81
Tanja Radovic
Kragujevac

Član broj: 77560
Poruke: 37
*.verat.net.



Profil

icon Re: Muke sa zagradama u upitu!!!20.03.2006. u 20:04 - pre 220 meseci
A, ovako zelim da mi izgleda forma! Samo da vrednosti u koloni saldo budu onako kako sam htela upitom da dobijem.
Prikačeni fajlovi
 
Odgovor na temu

goranvuc
Goran Vucicevic
Novi Sad

Član broj: 4934
Poruke: 1846
*.neobee.net.



+41 Profil

icon Re: Muke sa zagradama u upitu!!!20.03.2006. u 21:01 - pre 220 meseci
Pa ti rece da radis seminarski :)

Ja bih ti vrlo rado pomogao, ali ne radim front end u Access-u, vec u VB 6.0. Mogu ti reci kako sam ja to radio: Otvarao sam memorijske ADO rekordsete, u petlji ih punio i racunao kolonu saldo i onda takav rekordset podmetao DBgrid-u. Kao drugu varijantu sam koristio punjenje ListView kontrole ili FlexGrid-a, takodje na osnovu prethodno izvrsenog upita. U sustini imas dva izbora: Binding ili Filling, zavisi koju kontrolu koristis za prikaz.

Postoji i treca varijanta, ali ne znam koliko bi ti bila komplikovana: Punis posebnu tabelu koja ti sluzi kao kontejner za rezultate, prodjes po redovima i azuriras saldo, i onda je iskoristis za prikaz - vidjao sam kod Access programera da cesto koriste ovu varijantu.

Eto, ukratko.
 
Odgovor na temu

tanjakg81
Tanja Radovic
Kragujevac

Član broj: 77560
Poruke: 37
*.verat.net.



Profil

icon Re: Muke sa zagradama u upitu!!!20.03.2006. u 22:28 - pre 220 meseci
Seminarski i radim i to maloooo duzeeee, ali umesto da ga otaljam kao vecina ja hocu da na nesto lici makar malo...
Ali, priznacu, da mi niste izasli u susret verovatno bih odustala, ovako sto vise radim sve mi se vise radi,ali moracu uskoro da zavrsim ceka me diplomski!
Poslednje uputstvo mi ne znaci puno,jer ja sam se svega tek povrsno dotakla tako da...Mozda posle diplomskog!
U svakom slucaju,
puno hvala!
 
Odgovor na temu

tanjakg81
Tanja Radovic
Kragujevac

Član broj: 77560
Poruke: 37
*.verat.net.



Profil

icon Re: Muke sa zagradama u upitu!!!22.03.2006. u 19:16 - pre 220 meseci
Ubacila sam u prvom upitu("redni") kolonu sa rednim brojem vrste(RB) i sad je to jedinstveno polje za sve slogove u upitu nad kojim vrsim upit:


Code:
SELECT drugi.RB, drugi.IDnaloga, drugi.datumNaloga, drugi.Skonto, drugi.Duguje, drugi.Potrazuje,
                                  (SELECT Sum(Duguje)- Sum(Potrazuje)
                                      FROM redni AS prvi
                                 WHERE ((prvi.RB<=drugi.RB))) AS Saldo
FROM redni AS drugi;





Medjutim, pri pokretanju upita dobijam MsgBox:Enter Parameter Value drugi.RB?
Sta sad nije u redu?
 
Odgovor na temu

[es] :: Access :: Muke sa zagradama u upitu!!!

[ Pregleda: 3341 | Odgovora: 15 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.