12-07-2012, 20:28
8 numaralı mesajdaki sorguyu silin yerine bu sorguyu yazın ayrıca bir tane modül açın ve içine aşağıdaki kodu yapıştırıp kaydedin
yılı büyütürseniz sonucun değişmemesi kayıtlar değişmediği için gayet normal bir durum. Tarih aralığı daralırsa kayıtların sayısında eksilme olursa değişiklik olur
Visual Basic
- Public Function kaconeri(trh As Date, sicili As Double)
- kaconeri = DCount("*", "[öneri tablosu]", "[sicil no]=" & sicili & _
- " and month([öneri tarihi])=" & Month(trh))
- End Function
SQL
- SELECT [öneri tablosu].[sicil no], MONTH([öneri tarihi]) AS AY, [öneri tablosu].[öneri durumu], COUNT([öneri tablosu].[öneri durumu]) AS ÖneriSayısı, kaconeri([öneri tarihi],[sicil no]) AS Top_Öneri_Sayı, 3-([Top_Öneri_Sayı]) AS EksikÖneriler
- FROM [öneri tablosu]
- WHERE ((([öneri tablosu].[öneri tarihi]) BETWEEN #2/12/2012# AND #12/12/2012#))
- GROUP BY [öneri tablosu].[sicil no], MONTH([öneri tarihi]), [öneri tablosu].[öneri durumu], kaconeri([öneri tarihi],[sicil no])
- ORDER BY [öneri tablosu].[sicil no], MONTH([öneri tarihi]);
yılı büyütürseniz sonucun değişmemesi kayıtlar değişmediği için gayet normal bir durum. Tarih aralığı daralırsa kayıtların sayısında eksilme olursa değişiklik olur
Teşekküre gerek yok, Taş atın yeter!!!


Bu arada, bir önceki mesajımda düzenleme yaparak tüm tabloları tek bir sorguya almayı sormuştum. Ancak bunu yaptığımda [sicil no] için bir uyarı mesajı çıkıyor. Tüm tabloları kullanarak tek bir sorgu oluşturamaz mıyım? sonra da bu sorguyu kullanarak pivot tablo oluşturmayı düşünüyorum. Şimdi koyacağım ekteki sorguya bakabilir misiniz lütfen?