superweb' Alıntı:

sizinde dediğiniz gibi ufacık bi mantık hatam var sanırım bi türlü çıkamadım işn içinden :d bakın ben size en sade halini yazıyım şimdi birazcık daha rahat anlicaksınız istediğim şeyi select d. AboneNo, d. tDocumentId, COUNT as 'Adet' from tBatch as b inner join tDocument as d on d. tBatchId =b. tBatchId where ISNULL(b. Deleted,0)=0 and ISNULL(d. Deleted,0)=0 group by d. AboneNo, d. tDocumentId having COUNT &gt;1 order by COUNT bu kodda çalışıyor temelde. bunda da kolonlar bos geliyor. sebebide su sanırım : COUNT &gt;1 1 den büyük değer yok ondan bos geliyor. burayı 0 yada 1 e eşitlediğim zaman program çalışıyor. ama bana işte 1 den büyük olan değerler lazım. yani bi abone numarası başka nerde kullanılıyo bana bunun sayısını vermesi lazım. umarım derdimi anlatabilmişimdir :d

sorgunuzun başını select d. AboneNo, d. tDocumentId, COUNT as 'Adet' şeklinde değiştirebilirsiniz. d. AboneNo'ya göre grupladığınız için d. AboneNo'ya ait 1 tane d. tDocumentId görebilirsiniz. d. AboneNo'ya ait tüm d. tDocumentId'leri görmek istiyorsanız gruplamaktan vazgeçmeniz gerekir. Bu durumda Adet'i yazılım diliniz ile bulmanız gerekir.

İlk mesajınızda COUNT as 'Adet' idi 12:18'de yazdığınız mesajınızda COUNT as 'Adet' olmuş. Hangi sütununuz tekil hangi sütununuz çoğul? Çoğulun count'unu alıp tekili group'un peşisırasına yazmanız gerekiyor. Biraz karışık anlatmış olabilirim kusura bakmayın. 2 tablonuzdan da biraz örnek kayıt yazıp almak istediğiniz sonucu ona göre yazarsanız sevinirim.

Gruplamadan yapmanızı d. AboneNo'ya ait tüm d. tDocumentId'leri istiyorsanız yapabilirsiniz demiştim. Hangi dilde örnek kod işinizi görür? Ayrıca tablolarınız ne kadar büyük? Eğer çok kayıt var ise gruplamadan script dili ile yapmak hantallığa sebep olacaktır. Ayrıca MSSQL server ise prosedür de yazabilirsiniz. Script dilinden daha hızlı olacaktır. Bana öyle geliyor ki ufak bir mantık hatası yapıyorsunuz o nedenle sonuç alamıyorsunuz. Biraz deneme yanılma da yapabilirsiniz. Mesela having COUNT &gt;1 ifadesini kaldırın ne oluyor? Nasıl bir sonuç geliyor?

tDocumentId AboneNo Adet 12345 323232 2 34567 656565 2 89745 212121 3 99988 656565 2 ekrana bu şekilde çıktı vermesi lazım işte, bende burdan tDocumentId kolonunu kople kopyalayıp programdan daha rahat bi şekilde islemlerimi yapabilicem. bana bu lazım...

MSSQL server kullanıyorsunuz sanırım. MSSQL konusunda çok bilgim yok. Sorgu sonucu boş geliyor çünkü having COUNT &gt;1 ifadesini sağlayan bilgi yok. Şöyle bir dener misiniz? group by d. tDocumentId, d. AboneNo yerine group by d. AboneNo, d. tDocumentId

--ABONE NO AYNI OLAN ABONELERİN LİSTESİ select d. AboneNo, COUNT as 'Adet' from tBatch as b inner join tDocument as d on d. tBatchId =b. tBatchId where ISNULL(b. Deleted,0)=0 and ISNULL(d. Deleted,0)=0 group by d. AboneNo having COUNT &gt;1 order by COUNT arkadaslar yukarıdaki kodu sağlıklı bir şekilde çalıştırıyorum orda bi sıkıntm yok. fakat ekrana abone numaralarının yanına tdocumentıd lerinide yazdırmak istiyorum ama yazdıramıyorum, bana yardımcı olabilirmisiniz acaba? ekrana gelen şekil : AboneNo Adet 323232 2 656565 2 212121 3 656565 2 gelmesi gereken şekil : tDocumentId AboneNo Adet 12345 323232 2 34567 656565 2 89745 212121 3 99988 656565 2 bu şekilde ekrana gelmesini istiyorum, teşekkürler...