alttaki kod çalıştıta bunu fonksyona alamadım şuan onla uğraşıyorum :D DECLARE @r VARCHAR(800),@rs VARCHAR(800) DECLARE c1 CURSOR FOR SELECT SehirID FROM UrunSehir where UrunID=94 OPEN c1 FETCH NEXT FROM c1 INTO @rs SET @r=@rs WHILE @@FETCH_STATUS = 0 BEGIN FETCH NEXT FROM c1 INTO @rs if(@@FETCH_STATUS=0) SET @r=@r+','+@rs END select @r CLOSE c1 DEALLOCATE c1

2 tablom var 1 sorgu ve birde sorgu içinde dinamik sutun açmam lazım. iç içe select gibi kulağa geliyor ama oyle değil. çünkü diğer selectte birden fazla kayıt var. Nasıl mı? Tablo 1: Urun Tablo2: UrunSehir select UrunID, UrunAdi, SehirID, from Urun siyah olan kısımda birden fazla kayıt var ve sorgu haliyle patlıyor. Ordaki birden fazla olan kayıtı "2,5,7,1" şeklinde nasıl gsterebilirim? Aklıma function yapıp fetch ile dndürmek geldi ama başka yolu var mı?

hocalar Join olmaz çünkü her ürün kaydı bir kere gelmesi lazım select UrunID, UrunAdi, SehirID,(1,4,6,8) from Urun gibi olması lazım sorgu sonucunun cemnet tarafından 11/Ara/13 10:17 tarihinde düzenlenmiştir

ve çalıştı mutlu son select UrunID, UrunAdi, SehirID, ver(94) from Urun alter FUNCTION . RETURNS nVARCHAR(800) AS BEGIN DECLARE @r VARCHAR(800),@rs VARCHAR(800) DECLARE c1 CURSOR FOR SELECT SehirID FROM UrunSehir where UruntID=@ID OPEN c1 FETCH NEXT FROM c1 INTO @rs SET @r=@rs WHILE @@FETCH_STATUS = 0 BEGIN FETCH NEXT FROM c1 INTO @rs if(@@FETCH_STATUS=0) SET @r=@r+','+@rs END --select @r CLOSE c1 DEALLOCATE c1 RETURN ; END

hoca hazir konu acilmisken, burada bulunsun concatenating aggregation https://www.simple-talk.com/sql/t-sql-programming/concatenating-row-values-in-transact-sql/ C ya hepsin ya hic.. ya TÜRK"sün ya pic!

join kullanabilirsin SELECT p. UrunID, p. UrunAdi, p. SehirID AS p_SehirID, pc. SehirID AS pc_SehirID FROM Urun AS p INNER JOIN UrunSehir AS pc WHERE p. UrunID = pc. UrunID temel olarak p. UrunID'nin degisip degismedigini kontrol et, degismemisse ayni satirdadir. hojucuk tarafından 11/Ara/13 10:03 tarihinde düzenlenmiştir C ya hepsin ya hic.. ya TÜRK"sün ya pic!

hoca hazir konu acilmisken, burada bulunsun concatenating aggregation https://www.simple-talk.com/sql/t-sql-programming/concatenating-row-values-in-transact-sql/ hmm buda iyimiş elbet bir gün lazım olur bu seneryo

Select a. , b. from Urun a inner join UrunSehir b on a. SehirID=b. UrunSehirID bu sana 2 tablodaki bütün kayıtları listeler www.yesilgrow.com - Growshop