Šta je novo?

Malo komplikovaniji SQL query...

  • Začetnik teme Začetnik teme melkor
  • Datum pokretanja Datum pokretanja

melkor

Čuven
Učlanjen(a)
24.12.2001
Poruke
533
Poena
620
MSSQL 2005

Imam dve tabele:
tabela 1, koja izgleda ovako:

sifra_artikla1 prodat
sifra_artikla2 prodat
sifra_artikla3 prodat
sifra_artikla1 prodat
sifra_artikla4 prodat
sifra_artikla5 prodat
sifra_artikla5 prodat
sifra_artikla2 prodat
sifra_artikla3 prodat

tabela2, koja izgleda ovako:

sifra_artikla1 ime_artikla1
sifra_artikla2 ime_artikla2
sifra_artikla3 ime_artikla3
sifra_artikla4 ime_artikla4
sifra_artikla5 ime_artikla5

Treba da prebrojim koliko je komada od svakog artikla prodato, i da pored toga dodam i ime samog artikla.

sifra_artikla1 ime_artikla1 2
sifra_artikla2 ime_artikla2 2
sifra_artikla3 ime_artikla3 2
sifra_artikla4 ime_artikla4 1
sifra_artikla5 ime_artikla5 2

Zelim da izbegnem kreiranje privremene tabele... sto trentno koristim.

Hvala!!
 
Moze sa subqueryem, mozda nije optimizovano ali trebalo bi da radi. Primjer za MySQL, vjerovatno bi radilo i za MSSQL


SELECT
sifra_artikla,
ime_artikla,
(SELECT count(*) FROM tabela1 WHERE tabela1.sifraartikla = tabela2.siftaartikla) AS broj_prodanih
FROM tabela2
 
Poslednja izmena:
select t2.sifra_artikla, ime_artikla, count(*)
from tabela2 t2 left outer join tabela1 t1
on t2.sifra_artikla = t1.sifra_artikla
group by t2.sifra_artikla, ime_artikla
 
Proradilo je drugo resenje. Hvala !!
:wave:
 
Nazad
Vrh Dno