Sorguda count distinct nasıl yapabilirim?
Tarih
17/12/2008 16:44
Konu Sahibi
Hakan
Yorumlar
14
Okunma
5679
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ü 
Sponsor Reklam
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ü 
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ü 
Sponsor Reklam
[/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ü 
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ü 
Sponsor Reklam
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
06/11/2015,13:38
Çözüldü 
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
  Çapraz sorguda Between Like komutu orderyazbim 4 135 Dün, 00:52 orderyazbim
  Accesste parmak izi cihazı senkronize shift programı nasıl oluşturulur ? mugursan 11 372 13/01/2017, 19:50 mugursan
  Access Sorguda Toplama Barkın Yalçınöz 7 160 28/12/2016, 20:20 ozguryasin
  Sorguda ürün fiyatına indirim yapma Dream41 3 104 23/12/2016, 11:57 Dream41
  sorguda top cümlesi Denizl 5 162 10/12/2016, 23:55 Mecnun24


Türkçe Çeviri: MCTR, Yazılım: MyBB, © 2002-2017 MyBB Group.
DMCA.com Protection Status
© Desing by XSTYLED| Develops by ozanakkaya