[ bigtime @ 16.06.2007. 23:53 ] @
Pozdrav,
Imam proceduru u Northwind bazi koju pozivam iz aplikacije i imam jednu promenljivu. Ako u aplikaciji odaberem dva razlicita OrderID broja iz [Order Details] tabele, nece mi grupisati podatke, nego ce dva puta ispisati isti ProductID. Evo koda:

Code:

SELECT ProductID
FROM [Order Details]
WHERE OrderID = '10249'


Ali ukoliko stavim i OrderID = '10250' onda ce se procedura dva puta pozvati i dobicu dva ProductID sa istim brojem, a zeleo bih da u listi svih ProductID pise samo jedan. Pokusao sam sa DISTINCT, Group BY, ali ne prolazi...
Da li neko ima mozda pametnu ideju kako bih ovaj problem mogao da resim?
Hvala puno.

Pozdrav,
Vlada
[ dekibre @ 18.06.2007. 16:23 ] @
Ako sam dobro shvatio ti bi iz aplikacije da pošalješ u stored proceduru listu selektovanih OrderID a da ti procedura vrati listu unique ProductID za selektovane OrderID.

tj tebe interesuje rezultat kao što je ovaj

Code:
SELECT distinct ProductID
FROM [Order Details]
WHERE OrderID in ('10249', '10250')
[ bigtime @ 20.06.2007. 21:58 ] @
To je to, hvala Dejane. Mada je problem u aplikaciji jer se procedura poziva toliko puta koliko ima parametara... Moja greska... U svakom slucaju radim sa "IN" kao sto si i napisao.

Pozdrav,
Vlada
[ Teks @ 09.08.2007. 17:13 ] @
Ne znam sa kojom kolicinom podataka baratate ali generalno IN klauzula je sporija od =
Jedno je rešenje da imate dodatnu kolonu za grupisanja.
Sa tom kolonom bi '10249', '10250' bili označeni da su u istoj grupi (vrednost Nove kolone je npr. 1)
pa bi select bio

SELECT distinct ProductID
FROM [Order Details]
WHERE NovaKolona = 1

Ovo je bolje jer promenom master podataka lako možete u jednu grupu dodati
koliko god hoćete artikala
pa onda možete dodati još kolona za grupisanje itd.