izdvajanje iz tabele...

1

izdvajanje iz tabele...

offline
  • Pridružio: 04 Mar 2005
  • Poruke: 31

Imam recimo polje sa imenima,u kojem se ponavljaju ista imena...kako da izdvojim iz tabele samo razlicita imena.Npr. imam imena :dragan,pero,dragan,jovica...kako da uradim da mi u drugoj tabeli prikaze samo :dragan,pero,jovica...da ne duplira ili da ne prikazuje sva polja sa jednim imenom...
radim sa clientdatasetom



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
offline
  • Đuro Glumac
  • dipl. ing. informatike
  • Pridružio: 08 Feb 2004
  • Poruke: 3640
  • Gde živiš: ApAtIn

Napises proceduru za to. Npr. ucitas prvo ime i poredis ga sa svim ostalim iz te druge tabele gde smestas imena. Ukoliko se npr. ne pronadje to ucitano ime ono se smesta u novu tabelu. Zatim ucitavas sledece itd...



offline
  • Pridružio: 13 Dec 2004
  • Poruke: 18
  • Gde živiš: Novi Sad

Imas mogucnost koriscenja opcije DISTINCT kada radis select izraz na jednoj tabeli.

Recimo

 SELECT DISTINCT osobe.ime FROM OSOBE

To bi trebalo da ti kao rezultat da samo one zapise u tabeli koji
su razliciti, bez ponavljanja.

offline
  • Pridružio: 04 Mar 2005
  • Poruke: 31

Ako mozes da mi tu svoju ideju malo bolje pojasnis.Znaci imam jedan clientdataset i na njega vezan dbgrid.U jednoj columni mi se ponavljaju imena.Izdvojio bih samo razlicita imena.KAKO...?

Dopuna: 06 Mar 2005 11:29

Mozda nisam dobro objasnio.Baza je lokalna...to u stvari i nije klasicna baza.Obicna tabela uradjena pomocu clientdataset-a.Neznam da li se tu moze koristiti sql i query?

offline
  • Strog  Male
  • Stručni saradnik
    Web programiranje
  • Bojan Kopanja
  • Web & Mobile developer @ ZeusSoftware
  • Pridružio: 26 Jul 2003
  • Poruke: 2597
  • Gde živiš: Stara Pazova

A gde hoćeš da izdvojiš ta imena? U neku drugu tabelu ili u neku listu/fajl ili slično? Ajde, reci još to pa ti šaljem celu proceduru na ovu foru koju je NuLL rekao Wink.

Može i sa distinct-om to da se odradi, ali ja ipak više volim dobru staru for petlju Very Happy.

offline
  • Pridružio: 04 Mar 2005
  • Poruke: 31

Hteo bih da izdvojim ta imena u posebnu tabelu u kojoj ce mi biti prikazana i agregatna polja koja mogu da odstampam.Ovako mi se ponavljaju polja koja moram stampati a to onda ne lici ni na sta.

offline
  • Strog  Male
  • Stručni saradnik
    Web programiranje
  • Bojan Kopanja
  • Web & Mobile developer @ ZeusSoftware
  • Pridružio: 26 Jul 2003
  • Poruke: 2597
  • Gde živiš: Stara Pazova

Evo, onda bi to moglo recimo ovako da izgleda:

var  i,j:integer;       br_redova:integer;       duploime:boolean; begin   br_redova:=ADOTable1.RecordCount;   for j:= 1 to br_redova do begin   edit1.text:=ADOTable1.ItemValue['ime']; { u edit1 smestam trenutno ime kako bi ga uporedjivao sa sledecima, mozes uzeti i neku promenljivu tipa string umesto edit1}   duploime:=false;   ADOTable1.First;   for i := 1 to br_redova do//pocetak provere za duplo ime   begin     if edit1.Text=ADOTable1.FieldValues['ime'] then                   begin                     duploime:=true;                     i:=br_redova;                   end;     if i<br_redova then begin ADOTable1.Next end;   end;   //kraj provere   if not duploime then begin                       with ADOTable2 do                       begin                         Insert;                         fielfbyname('ime2').value:=Edit1.text;                         //jos isprebacuj od podataka sta ti treba u tu novu tabelu                         Post;                       end;                      end;   end;   if j<br_redova then ADOTable1.Next; end;

Ovaj kod sam pisao sada i to iz glave, bez ikakve provere, tako da će verovatno biti greški i omaški Very Happy, ali je suština tu, tako da bi trebao da ukapiraš o čemu se radi!

offline
  • Pridružio: 18 Apr 2003
  • Poruke: 8134
  • Gde živiš: U kesici gumenih bombona...

bre Strog

to sve mozes sa jednim SQL upitom da uradis... samo trebas da ga izvrsis nad tom bazom (ne znam kako se radi u Delphi-ju)... i procitas recordset i to je to...

napisao bih kako to ide za VB, ali necu da mesam dva jezika... inace to se radi sa SELECT DISTINCT kako je i staleks rekao....

u 4-5 redova, a ne ovoliko...

offline
  • Pridružio: 04 Mar 2005
  • Poruke: 31

Ljudi hvala vam svima na trudu i strpljenju ali niste me razumeli.Nemogu koristiti ni sql ni ado komponente.Zato sto je ova moja baza - tabela uradjena u clientdataset-u i lokalna je.Clientdataset mi je referisan na fajl u kojem se nalaze podaci u binarnom ili xml formatu (cds i xml).On se ucitava u memoriju,kompletni podaci i radi se direktno sa bazom - tabelom.Da vas vise ne mucim i ne smetam pokusacu to resiti sa accessom i vb.netom,tamo cu se zezati sa sql-om.Mada je i ovo zanimljiv problem...
Hvala vam svima...

offline
  • Strog  Male
  • Stručni saradnik
    Web programiranje
  • Bojan Kopanja
  • Web & Mobile developer @ ZeusSoftware
  • Pridružio: 26 Jul 2003
  • Poruke: 2597
  • Gde živiš: Stara Pazova

Pa u čemu je problem?! Ovo rešenje bi trebalo da radi za bilo koje baze i komponente pod Delphijem, samo ADOTable menjaj sa onim što ti odgovara i ako treba malo prilagodi pristup bazi!

Ko je trenutno na forumu
 

Ukupno su 815 korisnika na forumu :: 6 registrovanih, 1 sakriven i 808 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 3466 - dana 01 Jun 2021 17:07

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: 9k38, Dovla, Milometer, nenad81, pera12345, slonic_tonic