Konu Araçları | Seçenekler: | Gösterim Stili

Sorguda count distinct nasıl yapabilirim?

Tarih
17/12/2008 16:44
Konu Sahibi
Hakan
Yorumlar
14
Okunma
6202
Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 5
  • 4
  • 3
  • 2
  • 1

Derecelendirme: 0/5 - 0 oy

Hakan


Aktif Üye
Kullanici Avatari
Aktif Üye
58
12/11/2008
0
İstanbul
Ofis 2007
22/06/2015,22:17
Çözüldü 
Merhabalar,

Quary de alt alta gelen mükerrer rakamların count edilmesini yapmak için kullandıgım komut bu "count(distinct Main.FisNo) AS CountOfFisNo INTO gunluk" fakat bir türlü beceremedim. Örnek resim üzerinde anlatmaya calistim yardımcı olursanız sevinirim.

iyi çalışmalar,


Ek Dosyalar Ekran Görüntüleri
   

Insanlarin birbirini Yanlis Alamalari Icin 9 Ihtimal Vardir.

''Dusundugunuz / Soylemek Istediginiz / Soyledigini Sandiginiz / Soylediginiz / Karsinizdakinin Duymak Istedigi / Duydugu / Anlamak Istedigi / Anladigini sandigi / Anladigi''
Cevapla

syrup


Aktif Üye
Kullanici Avatari
Aktif Üye
196
1
30/10/2008
34
Çanakkale
Ofis 2003
08/10/2011,16:43
Çözüldü 
Sponsor Reklam
sevgili hakan şu şekilde dene

select count(fis) from(select distinct fis from main) as syrup
resimresim
Cevapla

Hakan


Aktif Üye
Kullanici Avatari
Aktif Üye
58
12/11/2008
0
İstanbul
Ofis 2007
22/06/2015,22:17
Çözüldü 
[/b]
(17/12/2008, 17:28)syrup Adlı Kullanıcıdan Alıntı: sevgili hakan şu şekilde dene

select count(fis) from(select distinct fis from main) as syrup


Sayın syrup,

Cevabınız icin teşekkür ederim. ama olmadı.. Ben Sql kodunu komple yazayım, birde o şekilde göz atın belki ben yanlış yapmış olabilirim.

SELECT Main.SatisTarihi, [Magaza Kodlari].Zone, [Magaza Kodlari].Area, [Magaza Kodlari].Shops, Sum(Main.HasilatFisUzerindeki) AS SumOfHasilatFisUzerindeki, Sum(Main.SatisAdedi) AS SumOfSatisAdedi, IIf([Main]![MalKodu]>1000 And [Main]![MalKodu]<9999999,"CIGARETTE"," ") & IIf([Main]![MalKodu]>10000000 And [Main]![MalKodu]<19999999,"SPIRITS"," ") & IIf([Main]![MalKodu]>20000000 And [Main]![MalKodu]<29999999,"CHOCOLATE"," ") & IIf([Main]![MalKodu]>30000000 And [Main]![MalKodu]<39999999,"PERFUME"," ") & IIf([Main]![MalKodu]>40000000 And [Main]![MalKodu]<44999999,"MAKEUP"," ") & IIf([Main]![MalKodu]>45000000 And [Main]![MalKodu]<49999999,"SKINCARE"," ") & IIf([Main]![MalKodu]>50000000 And [Main]![MalKodu]<89999999,"ACCESSORY/TOYS"," ") & IIf([Main]![MalKodu]>90000000 And [Main]![MalKodu]<2900000000,"OTHERS/SOUVENIR"," ") AS [Group], Sum(IIf([Main]![SatisTarihi]>=#1/1/2008# And [Main]![SatisTarihi]<=#12/31/2008#,[Main]![HasilatFisUzerindeki],0)) AS 2008, Sum(IIf([Main]![SatisTarihi]>=#1/1/2007# And [Main]![SatisTarihi]<=#12/31/2007#,[Main]![HasilatFisUzerindeki],0)) AS 2007, count(distinct Main.FisNo) AS CountOfFisNo INTO gunluk[b]FROM ([Magaza Kodlari] INNER JOIN Main ON [Magaza Kodlari].Code = Main.MagazaKodu) LEFT JOIN Milliyettablosu ON Main.MusteriBilgisiMiliyeti = Milliyettablosu.[Musteri No]
GROUP BY Main.SatisTarihi, [Magaza Kodlari].Zone, [Magaza Kodlari].Area, [Magaza Kodlari].Shops, IIf([Main]![MalKodu]>1000 And [Main]![MalKodu]<9999999,"CIGARETTE"," ") & IIf([Main]![MalKodu]>10000000 And [Main]![MalKodu]<19999999,"SPIRITS"," ") & IIf([Main]![MalKodu]>20000000 And [Main]![MalKodu]<29999999,"CHOCOLATE"," ") & IIf([Main]![MalKodu]>30000000 And [Main]![MalKodu]<39999999,"PERFUME"," ") & IIf([Main]![MalKodu]>40000000 And [Main]![MalKodu]<44999999,"MAKEUP"," ") & IIf([Main]![MalKodu]>45000000 And [Main]![MalKodu]<49999999,"SKINCARE"," ") & IIf([Main]![MalKodu]>50000000 And [Main]![MalKodu]<89999999,"ACCESSORY/TOYS"," ") & IIf([Main]![MalKodu]>90000000 And [Main]![MalKodu]<2900000000,"OTHERS/SOUVENIR"," ")
HAVING (((Main.SatisTarihi)>=#1/1/2008# And (Main.SatisTarihi)<=#12/15/2008#)) OR (((Main.SatisTarihi)>=#1/1/2007# And (Main.SatisTarihi)<=#12/15/2007#));

Insanlarin birbirini Yanlis Alamalari Icin 9 Ihtimal Vardir.

''Dusundugunuz / Soylemek Istediginiz / Soyledigini Sandiginiz / Soylediginiz / Karsinizdakinin Duymak Istedigi / Duydugu / Anlamak Istedigi / Anladigini sandigi / Anladigi''
Cevapla

syrup


Aktif Üye
Kullanici Avatari
Aktif Üye
196
1
30/10/2008
34
Çanakkale
Ofis 2003
08/10/2011,16:43
Çözüldü 
Sponsor Reklam
hakan bu sorguda, önceki sorgunun çıkan sonucu baz alınarak gerekli sayıyı alırız.

select count(fis) from (select distinct fis from (SELECT Main.SatisTarihi, [Magaza Kodlari].zone, [Magaza Kodlari].area, [Magaza Kodlari].shops, Sum(Main.HasilatFisUzerindeki) AS SumOfHasilatFisUzerindeki, Sum(Main.SatisAdedi) AS SumOfSatisAdedi, IIf(Main!MalKodu>1000 And Main!MalKodu<9999999,"CIGARETTE"," ") & IIf(Main!MalKodu>10000000 And Main!MalKodu<19999999,"SPIRITS"," ") & IIf(Main!MalKodu>20000000 And Main!MalKodu<29999999,"CHOCOLATE"," ") & IIf(Main!MalKodu>30000000 And Main!MalKodu<39999999,"PERFUME"," ") & IIf(Main!MalKodu>40000000 And Main!MalKodu<44999999,"MAKEUP"," ") & IIf(Main!MalKodu>45000000 And Main!MalKodu<49999999,"SKINCARE"," ") & IIf(Main!MalKodu>50000000 And Main!MalKodu<89999999,"ACCESSORY/TOYS"," ") & IIf(Main!MalKodu>90000000 And Main!MalKodu<2900000000,"OTHERS/SOUVENIR"," ") AS [Group], Sum(IIf(Main!SatisTarihi>=#1/1/2008# And Main!SatisTarihi<=#12/31/2008#,Main!HasilatFisUzerindeki,0)) AS 2008, Sum(IIf(Main!SatisTarihi>=#1/1/2007# And Main!SatisTarihi<=#12/31/2007#,Main!HasilatFisUzerindeki,0)) AS 2007, Main.fis, Main.fisno
FROM ([Magaza Kodlari] INNER JOIN Main ON [Magaza Kodlari].code = Main.MagazaKodu) LEFT JOIN Milliyettablosu ON Main.MusteriBilgisiMiliyeti = Milliyettablosu.[Musteri No]
GROUP BY Main.SatisTarihi, [Magaza Kodlari].zone, [Magaza Kodlari].area, [Magaza Kodlari].shops, IIf(Main!MalKodu>1000 And Main!MalKodu<9999999,"CIGARETTE"," ") & IIf(Main!MalKodu>10000000 And Main!MalKodu<19999999,"SPIRITS"," ") & IIf(Main!MalKodu>20000000 And Main!MalKodu<29999999,"CHOCOLATE"," ") & IIf(Main!MalKodu>30000000 And Main!MalKodu<39999999,"PERFUME"," ") & IIf(Main!MalKodu>40000000 And Main!MalKodu<44999999,"MAKEUP"," ") & IIf(Main!MalKodu>45000000 And Main!MalKodu<49999999,"SKINCARE"," ") & IIf(Main!MalKodu>50000000 And Main!MalKodu<89999999,"ACCESSORY/TOYS"," ") & IIf(Main!MalKodu>90000000 And Main!MalKodu<2900000000,"OTHERS/SOUVENIR"," "), Main.fis, Main.fisno
HAVING (((Main.SatisTarihi)>=#1/1/2008# And (Main.SatisTarihi)<=#12/15/2008#)) OR (((Main.SatisTarihi)>=#1/1/2007# And (Main.SatisTarihi)<=#12/15/2007#))) as syrup) as hakan

resimresim
Cevapla

Hakan


Aktif Üye
Kullanici Avatari
Aktif Üye
58
12/11/2008
0
İstanbul
Ofis 2007
22/06/2015,22:17
Çözüldü 
Sayın Syrup,

Evime geldim yarın iş yerinden deniyip cvp atacağım. çok teşekkür ederim.

Insanlarin birbirini Yanlis Alamalari Icin 9 Ihtimal Vardir.

''Dusundugunuz / Soylemek Istediginiz / Soyledigini Sandiginiz / Soylediginiz / Karsinizdakinin Duymak Istedigi / Duydugu / Anlamak Istedigi / Anladigini sandigi / Anladigi''
Cevapla

esrefigit



Kullanici Avatari
Onursal
598
30/10/2008
359
Konya
Ofis 2003
12/05/2017,17:08
Çözüldü 
Sponsor Reklam
fisno
11
11
588
588
588
588
456
45
456
457
457
457
500
bu şekilde tabloya girilmiş veriyi

bu sorgu
SELECT Tablo1.fisno
FROM Tablo1
GROUP BY Tablo1.fisno
HAVING (((Tablo1.fisno) In (SELECT [fisno] FROM [Tablo1] As Tmp GROUP BY [fisno] HAVING Count(*)>=1 )));


fisno
11
45
456
457
500
588

bu şekilde verir yani her kaydın yalnız birini verir dolayısı ile saymış olursun
meşhur çin atasözü  "ACCESS İLE YAPABİLECEKLERİNİZ HAYAL EDEBİLECEKLERİNİZ İLE SINIRLIDIR" siz ne kadar hayal edebiliyorsunuz
Cevapla


Konuyu Okuyanlar: 1 Ziyaretçi


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Tarih Son Yorum
Çözüldü Sorguda Önceki Aydan Devir dayko 7 293 24/06/2017, 10:51 dayko
Çözüldü Access Sorguda Toplama İşlemi onrask 6 234 16/06/2017, 18:13 ozanakkaya
Çözüldü Sorguda Detay Ve Sonuçların Rapora Alt Bilgi Olarak Aktarılması Sorunu cemre1970 4 139 09/06/2017, 08:23 cemre1970
Çözüldü Veritabanında Tıklanan Düğmenin Adı Yada Değerini Tabloya Nasıl Aktarabilirim cemre1970 2 135 03/06/2017, 22:11 cemre1970
Çözüldü Sorguda Genel Toplam Ve Farkları Bulma access acemisi 12 437 01/05/2017, 14:58 access acemisi

Türkçe Çeviri: MCTR, Yazılım: MyBB, © 2002-2017 MyBB Group.
MyTrade theme by eNvy
Forum use Krzysztof "Supryk" Supryczynski addons.