SQL- Dve tabele - Jedna vrednost

SQL- Dve tabele - Jedna vrednost

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

Moglo je sigurno...samo kad bih ja znao kako.Ali evo vec sam opet u rebusu.Imam dve tabele,Koje imaju jedno zajednicko polje "x".Treba da iz tabele1 vrednost sum(a-b) saberem ili oduzmem sa vrednoscu iz tabele2 sum(m-n). Znaci tabela1=sum(a-b) , tabela2 = sum(m-n)

E sad bi trebalo nesto ovako:

select distinct x,sum(a-b) - sum(m-n)

Moze li se to tako........Pokusavao sam ali nesto nece,pomocu distincta mi izdvoji vrednosti samo iz prve tabele a u drugoj mi ponavlja istu cifru i to neku bez veze.



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
offline
  • Pridružio: 18 Apr 2003
  • Poruke: 8134
  • Gde živiš: U kesici gumenih bombona...

Izvrši upit nad jednom tabelom i izdvoj, a istovremeno i saberi, vrednosti ta dva polja, a posle ponovo izvrši upit nad drugom tabelom i ponovo izdvoj ta dva polja i saberi ih. Posle oduzmi/saberi (ili šta već treba da uradiš) ta dva rezultata i to je to.



offline
  • Emil Beli
  • Pridružio: 03 Jan 2005
  • Poruke: 2990
  • Gde živiš: Beograd

select x,sum(a-b) - sum(m-n)
where (vezzi tabele)
group by x
Having (uslov)

Pisem napamet, mozda ces morati u group by obe kolone

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

Ne razumemo se nikako...

Tabela1: Tabela2:

IME KOLICINA CENA IME NESTO
pera 5 4 pera 10
pera 3 5 jovo 5
jovo 6 3 pera 4
jovo 2 3 jovo 2


Upit bi trebao da mi da ove podatke:

POLJE1 POLJE2 POLJE3 POLJE4
pera sum(KOLICINA*CENA) sum(NESTO) sum(KOLICINA*CENA) - sum(NESTO)
jovo sum(KOLICINA*CENA) sum(NESTO) sum(KOLICINA*CENA) - sum(NESTO)

Znaci da mi ne ponavlja u POLJU1 pera,pera,jovo,jovo nego samo razlicita imena
pera,jovo...itd

Dopuna: 11 Mar 2005 7:52

IME KOLICINA CENA IME NESTO
pera 5 4 pera 10
pera 3 5 jovo 3
jovo 6 3 pera 4
jovo 2 3 jovo 2

TABELA1 TABELA2

Dopuna: 11 Mar 2005 7:54

SAD SAM VEC IZNERVIRAN I ODUSTAJEM JER NEMOGU DA VAM NAPISEM KAKO TREBA,KAKO GOD JA NAPISEM I POSALJEM TAMO MI PROMENI IZGLED.lJUDI HVALA...

offline
  • Emil Beli
  • Pridružio: 03 Jan 2005
  • Poruke: 2990
  • Gde živiš: Beograd

problem je sto ne mozes da stavis i polje ime i drugo polje ime, jer nece ninasta da lici

evo ti, samo sa jednim imenom

select ime,sum(KOLICINA*CENA), sum(NESTO), sum(KOLICINA*CENA) - sum(NESTO) from Tabela
Group By ime

i to je to... ukoliko ukljucis i drugo polje IME, onda ces da dobijes salatu

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

select distinct IZNOS,SUM(A),SUM(B),SUM(A) - SUM(B)

FROM TABELA1

INNER JOIN TABELA2 ON Tabela1.Iznos=tabela2.Iznos

GROUP BY IZNOS


Ovo je kod koji mi je poslao Zidar sa ES-a,i to je to...samo sto mi je ovakav kakav je za duplo vise racunao vrednosti iz prve tabele.Samo sam sume podelio sa dva i dobio upravo ono sto sam i trazio.

Dopuna: 11 Mar 2005 16:16

Znaci radi sa obe tabele,izracunava sume u jednoj i u drugoj tabeli i medjusobno.

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

kao prvo, ako zelis da te forum 'slusa' i da to bude sta si hteo, koristi code tagove
kao drguo, pogresno si pristupio implementiranju tabele. to sam nas ucili u skoli i ti si upravo napravio rendudansu podataka. u jednom tabeli bespotrebno ponavljas pero, pero, pero onoliko puta koliko je taj pero kupio nesto ili za sta vec sluzi to, a uz rendudansu podataka, dolaze i anomalije pri brisanju, azuriranju i dodavanju... da ne pametujem sada...

ono kako si ti trebao da uradis (i kako bih ja uradio) to su dve tabele. u jednoj spisak korisnika/ljudia (pera, mika, zika), a u ovoj drugoj ostalo sta ti treba. te dve tabele povezujes sa ID poljem tabele za korisnike, a u ovoj prvoj gde je cena napravis novi atribut koji ce sadrzati ID korisnika iz tabele korisnika... nadam se da si razumeo. tako je redudansa izbacena kao i navedene anomalije. posle toga, malo je teze sklopiti SQL upit, ali nije to strasno... ako ti i ovo radi posao - OK. samo kazem kako se teorijski (skolski) projektuje...

offline
  • Emil Beli
  • Pridružio: 03 Jan 2005
  • Poruke: 2990
  • Gde živiš: Beograd

Samo je trebalo da se prochita moj poslednji post, i ne bi bilo potrebe da pravi "botch"-eve.

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

Cenim to sto ste ucili u skoli ali se nemoze primeniti u ovom mom slucaju.Primer polja koja sam vam napisao je samo primer,stvarna polja su potpuno drugacija ali je princip isti kao kod ovih tabela koje sam naveo i nemoze se drugacije resiti za to polje koje se ponavlja.Ono mora da se ponavlja,mislim na vrednosti u njemu.Nije u pitanju profi i velika baza podataka.Samo u lokalu.I kao sto vidite covek je nasao resenje za to.Cenim i vase odgovore i svakako ih proucavam i naucim nesto iz njih.Hvala za to...

Ko je trenutno na forumu
 

Ukupno su 815 korisnika na forumu :: 50 registrovanih, 7 sakrivenih i 758 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: A.R.Chafee.Jr., aleksmajstor, anta, Apok, Arahne, Battlehammer, Boris Bosiljčić, darkangel, deLacy, djuradj, doktor1964, Excalibur13, Frunze, Georgius, goxin, Hans Gajger, janbo, JOntra, kolle.the.kid, krkalon, Kubovac, kybonacci, Lieutenant, mercedesamg, milutin134, mkukoleca, mnn2, moldway, nobutado, NoOneEver Dreams, panzerwaffe, pein, powSrb, rajkoplje, raptorsi, robertino, ser.hill, stegonosa, styg, Trpe Grozni, vathra, Vlada1389, voja64, VP6919, vukovi, x9, yrraf, yufighter, ZetaMan, zlatkoa987