[ popmilan76 @ 23.05.2012. 15:13 ] @
da li je moguce povezivanje vise upita u jedan
[ popmilan76 @ 23.05.2012. 15:52 ] @
dakle,malo opsirnije,imam tabelu baza,sa poljima datum(date),reon(1,2,3,4,5...numberfield),broj(bilo koji visecifreni broj),i vrsta(stringovi...ars,ar,r),treba mi koliko se puta pojavljuje ars,ar,ili r u recordima za odredjen datum,dakle to treba da izgleda ovako
reon ars ar r datum
1 25 12 17 15.12.2012
2 14 42 35 15.12.2012
...
mogu resiti koriscenjem vise upita,ali bi mi trebalo kao jedan upit,,,,mogu ovako,ali time resavamo samo count ars
frmKnjiga.Query1.Close;
frmKnjiga.Query1.SQL.Clear ;
frmKnjiga.Query1.SQL.Add ('select count(VRSTA),REON from baza');
frmKnjiga.Query1.SQL.Add('where VRSTA = "ARS"');
FRMkNJIGA.query1.SQL.Add ('AND DATUM = ' + QUOTEDSTR(DATETOSTR(DATE)));
frmKnjiga.Query1.SQL.Add ('GROUP by REON');
frmKnjiga.Query1.Open;
frmKnjiga.preview;
[ biske86 @ 23.05.2012. 23:08 ] @
Koja baza je u pitanju?
[ popmilan76 @ 25.05.2012. 14:16 ] @
Baza je paradox...
[ biske86 @ 25.05.2012. 17:19 ] @
Ovo daje broj pojavljivanja određene vrste za svaki od datuma. GROUP BY klauzula se može shvatiti kao da pravi mini tabele tako da se Count funkcija ne odnosi na celu tabelu već na te mini tabele. Znači u ovom slučaju prave se mini tabele od redova kod kojih su isti Datum i Vrsta.
Code (sql):
SELECT Datum, Vrsta, COUNT(Vrsta)
FROM BAZA
GROUP BY Datum, Vrsta;
 


Mogao si malo više test podataka da daš pa da probamo da li radi
[ popmilan76 @ 25.05.2012. 18:17 ] @
ima recimo ukucano
reon vrsta datum
1 ars danas
1 ars danas
1 ar danas
2 r danas
3 ar danas


treba da bude u izvestaju sledece

reon ars ar r datum
1 2 1 danas
2 1 danas
3 1 danas


da reon bude unique a qrtext da izlazi horizontalno
[ biske86 @ 25.05.2012. 19:40 ] @
Moguće je to ručno uraditi ali će onda upit biti dosta veliki i nisam siguran da je to dobro rešenje. Mislim da se to radi na prethodni način a da se pretrava u ono što tebi treba preko nekog midleware-a koji koristi PIVOT tabele. To je već posle stvar prikaza na izveštajima.
[ popmilan76 @ 25.05.2012. 20:38 ] @
a da se to ne radi preko transform u sql,nisam koristio taj statement ,i ne znam da li moze da se koristi u delphi
[ popmilan76 @ 26.05.2012. 19:34 ] @
moze li neko pomoci

treba mi jedan kveri,umesto nekoliko,ti nekoliko bi izgledalo ovako

1.
select reon,count(vrsta) as ukupno from baza
group by reon

2.
select reon,count(vrsta) from baza
where vrsta = 'ars'
group by reon

3.
select reon,count(vrsta) from baza
where vrsta = 'ar'
group by reon

4.
select reon,count(vrsta) from baza
where vrsta = 'r'
group by reon


i kao result u izvestaju dobijem

reon vukupno ars ar r
1 25 20 3 5
2 30 23 4 3
...
[ popmilan76 @ 27.05.2012. 14:01 ] @
pomogajte braco,ima li neko da zna ovo
[ biske86 @ 27.05.2012. 16:24 ] @
Moguće je to uraditi ručno, a za neki drugi način to što kažeš transformacijom ne znam.
Mislim da je najbolje da postaviš ovo pitanje u podforumu baze podataka pošto tamo ima dosta ljudi koji dosta dobro poznaju ovu problematiku, sigurno ćeš dobiti odgovor.
[ popmilan76 @ 27.05.2012. 22:01 ] @
resio tako sto san napravio jos dve kolone,pa brojao iz njih...hvala svima
[ biske86 @ 28.05.2012. 01:41 ] @
Koje dve kolone? Objasni malo bolje možda bude nekom od koristi.
[ popmilan76 @ 28.05.2012. 14:35 ] @
umesto u jednu kolonu vrsta u koju sam ubacivao ars,ar,r...napravio sam jos dve kolone,vrstaars,vrstaar,u koju sam ubacivao ars,ar i odatle sam vukao count za svaku od njih,verovatno moze i sa jednom kolonom ali odradjuje posao i ovako...