Microsoft Access'te GROUP BY, belirli bir alandaki aynı değerlere sahip kayıtları tek bir kayıtta birleştirmek için kullanabileceğiniz bir yan tümcedir. SELECT deyimine AVG, COUNT veya SUM gibi bir SQL toplama işlevi eklerseniz, Access her kayıt için bir özet değer oluşturur.
Bu makaledeki talimatlar Access for Microsoft 365, Access 2019, 2016, 2013 ve 2010 için geçerlidir.
GROUP BY kullanma
SQL Görünümünde bir SQL sorgusu kullanarak GROUP BY işlevini bulabilir ve kullanabilirsiniz. Verilerinize erişmenin ve bunları kontrol etmenin en basit ve en doğrudan yollarından biridir.
-
Access'i başlatın ve veritabanınızı açın.
Bu örnek, Northwind Örnek Veritabanını kullanır.
-
Oluştur sekmesini seçin.
-
Sorgular grubunda Sorgu Tasarımı öğesini seçin.
-
Tablo Ekle listesinde, çalışmak istediğiniz tabloyu seçin.
-
Sonuçlar grubunda Görünüm öğesini seçin ve SQL Görünümü öğesini seçin.
- Ana gövde bir sorgu terminal penceresine geçecektir. Buraya istediğiniz sorguyu girebilirsiniz.
-
SQL'den temel bir gruplama elde etmek için şunun gibi bir şey girersiniz:
SEÇFROM tabloismi NEREDE sütun/kategori GİBİ 'giriş';
Tablonun gerçek adını, kategoriyi veya sütun başlığını ve aradığınız gerçek giriş değerini değiştirin.
Sorguyu Çözmek
Örneğin, aşağıdaki özelliklerden oluşan bir sipariş veri tablosu düşünün:
- OrderID: Her siparişi benzersiz şekilde tanımlayan sayısal bir değer. Bu alan, veritabanı için birincil anahtardır.
- Salesperson: Ürünleri satan satış görevlisinin adını sağlayan bir metin değeri. Bu alan, personel bilgilerini içeren başka bir tablonun yabancı anahtarıdır.
- CustomerID: Bir müşteri hesap numarasına karşılık gelen sayısal bir değer. Bu alan aynı zamanda müşteri hesabı bilgilerini içeren bir tabloya atıfta bulunan bir yabancı anahtardır.
- Revenue: Satışın dolar tutarına karşılık gelen sayısal bir değer.
Satış görevlileri için performans incelemeleri yapma zamanı geldiğinde, Siparişler tablosu bu inceleme için kullanılabilecek değerli bilgiler içerir. Jim'i değerlendirirken, örneğin, Jim'in tüm satış kayıtlarını alan basit bir sorgu yazabilirsiniz:
SEÇ Satış Görevlisinin “Jim” GİBİ OLDUĞU SİPARİŞLERDEN;
Bu, Jim tarafından yapılan satışlara karşılık gelen veritabanındaki tüm kayıtları alır:
OrderID Satış Görevlisi Müşteri Kimliği Gelir
12482 Jim 182 40000
12488 Jim 219 25000
12519 Jim 137 85000
12602 Jim 182 10000 12741 Jim 155 90000
Performans istatistiklerini geliştirmek için bu bilgileri gözden geçirebilir ve bazı manuel hesaplamalar yapabilirsiniz, ancak bu, şirketteki her satış görevlisi için tekrarlamanız gereken sıkıcı bir görev olacaktır. Bunun yerine, bu çalışmayı, şirketteki her satış elemanının istatistiklerini hesaplayan tek bir GROUP BY sorgusu ile değiştirebilirsiniz. Sorguyu yazarsınız ve veritabanının sonuçları Satış Görevlisi alanına göre gruplaması gerektiğini belirtirsiniz. Daha sonra sonuçlar üzerinde hesaplamalar yapmak için SQL toplama işlevlerinden herhangi birini kullanabilirsiniz.
İşte bir örnek. Aşağıdaki SQL ifadesini çalıştırdıysanız:
Satış Görevlisini SEÇ, TOPLA(Gelir) 'Toplam', MIN(Gelir) 'En Küçük', MAKS(Gelir) 'En Büyük', ORTA(Gelir) 'Ortalama', COUNT(Gelir) ' OLARAK SEÇİN Satış Görevlisine Göre Siparişler GRUBUNA GÖRE Numara;
Aşağıdaki sonuçları alırsınız:
Satış görevlisi Toplam En Küçük En Büyük Ortalama Sayı
Jim 250000 10000 90000 50000 5
Mary 342000 24000 102000 57000 6Bob 118000 4000 36000 39333 3
Gördüğünüz gibi, bu güçlü işlev, bir SQL sorgusu içinden kısa raporlar oluşturmanıza olanak vererek, performans incelemelerini yürüten yöneticiye değerli iş zekası sağlar. GROUP BY yan tümcesi veritabanlarında bu amaç için sıklıkla kullanılır ve DBA'nın hileler çantasında değerli bir araçtır.