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

Problem oko izrade upita

[es] :: Access :: Problem oko izrade upita

[ Pregleda: 1641 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

mich07

Član broj: 135235
Poruke: 21



+1 Profil

icon Problem oko izrade upita17.03.2012. u 08:23 - pre 147 meseci
Postovani forumasi,
imam jedan problem u vezi izrade upita. Naime, imam tabele: artikli (sa poljima naziv i cena), ulaz (sa poljima naziv, datumulaza i kolicinaulaza) i izlaz (sa poljima naziv, datumizlaza i kolicinaizlaza). Tabele su vezane preko polja naziv.
Podaci su sledeci:
Tabela artikli -
Code:
Naziv    cena
art1    100
art2    200
art3    300


Tabela ulaz -
Code:
naziv    datumulaza    kolicinaulaza
art1    01.01.2012        1
art2    01.02.2012        3


Tabela izlaz -
Code:
naziv    datumizlaza    kolicinaizlaza
art1    01.02.2012        2
art1    10.02.2012        2


Ono sto mi je potrebno je sledece: Na osnovu upita za odredjeni period, da izracunam razliku u datumu ulaza i izlaza kao i da saberem kolicine za isti period. Moj upit mi daje sledece podatke za dosad uneti period, a trebalo bi da kolicinu ulaza ne ponovi 2 puta jer tako daje pogresne vrednosti.

Code:
SELECT artikli.Naziv, artikli.cena, izlaz.datumizlaza, ulaz.datumulaza, izlaz.kolicinaizlaza, ulaz.kolicinaulaza
FROM (artikli INNER JOIN izlaz ON artikli.Naziv = izlaz.naziv) INNER JOIN ulaz ON artikli.Naziv = ulaz.naziv;



Code:
Naziv      cena           datumizlaza        datumulaza      kolicinaizlaza    kolicinaulaza
art1      100               01.02.2012        01.01.2012        2                1
art1      100               10.02.2012        01.01.2012        2                1


 
Odgovor na temu

Dexxxl
Dejan Stojanovic
Blagi uzas
Knjazevac

Član broj: 252836
Poruke: 212
178-223-146-39.dynamic.isp.telekom.rs.



+9 Profil

icon Re: Problem oko izrade upita17.03.2012. u 20:23 - pre 147 meseci
A sto koristis INERJOIN. Postavi vezu na nivou tabela (sa referencijalnim integritetom) artikli 1 : ulaz vise

Probaj RIGHTJOIN umesto INERJOIN

[Ovu poruku je menjao Dexxxl dana 17.03.2012. u 21:33 GMT+1]
 
Odgovor na temu

mich07

Član broj: 135235
Poruke: 21



+1 Profil

icon Re: Problem oko izrade upita17.03.2012. u 22:02 - pre 147 meseci
Veza i jeste postavljena na nivou tabela.
Kada primenim right join dobijem sledece:

Code:
SELECT artikli.Naziv, artikli.cena, ulaz.datumulaza, ulaz.kolicinaulaza, izlaz.datumizlaza, izlaz.kolicinaizlaza
FROM (ulaz RIGHT JOIN artikli ON ulaz.naziv = artikli.Naziv) LEFT JOIN izlaz ON artikli.Naziv = izlaz.naziv
ORDER BY artikli.Naziv;


Code:
Naziv    cena    datumulaza    kolicinaulaza    datumizlaza    kolicinaizlaza
art1    100       01.01.2012         1             10.02.2012         2
art1    100       01.01.2012         1             01.02.2012         2
art2    200       01.02.2012         3        
art3    300    


Tako da se opet art1 ponavlja 2 puta.
Prikačeni fajlovi
 
Odgovor na temu

Dexxxl
Dejan Stojanovic
Blagi uzas
Knjazevac

Član broj: 252836
Poruke: 212
178-223-146-39.dynamic.isp.telekom.rs.



+9 Profil

icon Re: Problem oko izrade upita17.03.2012. u 23:32 - pre 147 meseci
Izgleda samo ovako nesto ili slicno, nemoguce preko SQL-a sa ove 3 tabele
Prikačeni fajlovi
 
Odgovor na temu

Dexxxl
Dejan Stojanovic
Blagi uzas
Knjazevac

Član broj: 252836
Poruke: 212
77-46-169-130.dynamic.isp.telekom.rs.



+9 Profil

icon Re: Problem oko izrade upita19.03.2012. u 17:29 - pre 147 meseci
Evo preko SQL-a iz dva cuga. Ne znam da ih slozim u jedan, a verovatno bi bio suvise komplikovan izraz
Prikačeni fajlovi
 
Odgovor na temu

[es] :: Access :: Problem oko izrade upita

[ Pregleda: 1641 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

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