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

Kako napraviti ovakav DataSet?

[es] :: .NET :: Kako napraviti ovakav DataSet?

[ Pregleda: 2627 | Odgovora: 6 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

miki_ja
Bgd

Član broj: 69771
Poruke: 97
217.24.27.*



Profil

icon Kako napraviti ovakav DataSet?29.05.2006. u 15:57 - pre 218 meseci
Iz jedne tabele izdvajam sve redove pod određenim datumom (u jednom mesecu) i učitavam ih u DataSet. Posle toga hoću da prođem kroz sve redove DataSeta i u njemu ostavim samo redove sa različitom kolonom ID.
Recimo, iteriram kroz DataSet, nailazim na red ID = “A”, (ostavljam ga u DataSetu), nailazim na ID = “B”, (ostavljam ga), “C”, “D”, “E”, (ostavljam), zatim ponovo nailazim na “A” (izbacujem ga), nailazim na “D” (izbacujem ga) itd.
E sad… Svaki put kad naiđem na red sa novim ID-om, hoću da njegova kolona, recimo – “Uplata”, sadrži sumu svih uplata pod tim ID-om. Znači, na kraju hoću da mi ostane pet redaova u DataSetu - ID = A, B, C, D, E , ali pod “Uplatom” treba da bude suma svih uplata koje su postojale pod tim ID-om.

Nadam se da nisam previše zamrsio :) ! Kako ovo da izvedem?
 
Odgovor na temu

Željko
Željko Turbić
top of the mountain

Član broj: 16217
Poruke: 89
*.adsl.sezampro.yu.



+6 Profil

icon Re: Kako napraviti ovakav DataSet?29.05.2006. u 16:25 - pre 218 meseci

Koliko sam ja shvatio ovo vrlo lako mozes da resis u sql-u kad punis data set uradis group by po polju ID i sum(kolona uplata), tako ces dobiti to sto si trazio mnogo brze nego da rucno ides kroz dataset i sabiras uplate sa iste ID-eve.

pozdrav Željko
 
Odgovor na temu

miki_ja
Bgd

Član broj: 69771
Poruke: 97
217.24.27.*



Profil

icon Re: Kako napraviti ovakav DataSet?30.05.2006. u 00:05 - pre 218 meseci
Ja pokušavam da to rešim nekom petljom, mada valjao bi neki primer tog upita u međuvremenu...
 
Odgovor na temu

Fedya
Fedor Hajdu
Solution Architect
Emaratech
Dubai, UAE

Član broj: 28246
Poruke: 790
*.ADSL.neobee.net.

Jabber: fedya@elitesecurity.org
Sajt: devtechgroup.com


+34 Profil

icon Re: Kako napraviti ovakav DataSet?30.05.2006. u 10:56 - pre 218 meseci
Znaci u SelectCommand tvog DataAdaptera uglavis nesto ovako:

SELECT
ID, SUM(KolonaUplate) as Uplata
FROM
TvojaTablea
GROUP BY
ID


i to je to
Every hamster has his day.
 
Odgovor na temu

miki_ja
Bgd

Član broj: 69771
Poruke: 97
217.24.27.*



Profil

icon Re: Kako napraviti ovakav DataSet?30.05.2006. u 23:31 - pre 217 meseci
Extrica, ovo mi je baš pomoglo!
Međutim u jednom slučaju ne radi, i to baš u onom koji meni treba!

Ovako radi (i kada ubacim još neke kolone):
Code:

SELECT ID, Ime, Prezime, RedniBroj, SUM(KolonaUplate) as Uplata FROM MojaTabela GROUP BY ID, Ime, Prezime, RedniBroj


Ali kada isto pokušam sa datumom, nema šanse - ponovo dobijam sve redove:
Code:

SELECT ID, Ime, Prezime, RedniBroj, Datum, SUM(KolonaUplate) as Uplata FROM MojaTabela GROUP BY ID, Ime, Prezime, RedniBroj, Datum


: ??
 
Odgovor na temu

Željko
Željko Turbić
top of the mountain

Član broj: 16217
Poruke: 89
*.adsl.sezampro.yu.



+6 Profil

icon Re: Kako napraviti ovakav DataSet?01.06.2006. u 18:42 - pre 217 meseci
Citat:
Ali kada isto pokušam sa datumom, nema šanse - ponovo dobijam sve redove


Mozda bi malo trebao da pogledas sql upitni jezik, naime verovatno ti svaki row u tabeli ima dugaciji datum i zato dobijas sve redove(rows). Kada se radi group by onda se podaci grupisu po istim kolonama: znaci daj mi sve uplate(dobije se suma uplata) za isto ime i prezime i ID, ako tu dodas i datum i ako je datum za svaki row razlicit onda podaci ne mogu da se grupisu jer je taj jedan podatak(datum) razlicit za svaki row. To je i logicno, razmisli malo, dobije nesto ovako: ID=1, ime=Pera, prezime=Peric, suma uplata=99.99, sta bi trebalo da ti pise u polju datum? Kad u ovom primeru recimo imas tri uplate za Peru Perica od po 33.33, resenje je ako hoces da tu u polju datum stoji datum poslednje uplate, znaci do tog datuma Pera Peric je uplatio 99.99, onda upit izmenis ovako "SELECT ID, Ime, Prezime, RedniBroj, max(Datum), SUM(KolonaUplate) as Uplata FROM MojaTabela GROUP BY ID, Ime, Prezime, RedniBroj"


pozdrav Željko
 
Odgovor na temu

miki_ja
Bgd

Član broj: 69771
Poruke: 97
217.24.27.*



Profil

icon Re: Kako napraviti ovakav DataSet?02.06.2006. u 00:13 - pre 217 meseci
Ok, snašao sam se u međuvremenu...

Setio sam se da se datum u jednom mesecu svakako razlikuje po danima, tako da sam iskoristio: "SELECT... MONTH(Datum)... GROUP BY MONTH(Datum)..." i to mi savršeno odgovara... ustvari, skoro savršeno - trebalo bi da u toj koloni postoji malo drugačiji zapis, ali smisliću nešto... :)

Svakako mi je potrebno malo znanja iz SQL-a, nemam nijednu knjigu, tako da bi mi značila neka elektronska, pa ako imaš, može na pp...
 
Odgovor na temu

[es] :: .NET :: Kako napraviti ovakav DataSet?

[ Pregleda: 2627 | Odgovora: 6 ] > FB > Twit

Postavi temu Odgovori

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