Veritabanından veri almak için temel SQL sorgularını kullanabilirsiniz, ancak bu genellikle iş gereksinimlerini karşılamak için yeterli bilgi sağlamaz. SQL ayrıca, GROUP BY deyimini kullanarak toplu işlevleri uygulamak için sorgu düzeylerini satır düzeyinde özniteliklere göre gruplama olanağı sağlar. Örneğin, aşağıdaki özelliklerden oluşan bir sipariş verileri tablosu düşünün:
- OrderID - her siparişi benzersiz şekilde tanımlayan sayısal bir değer. Bu alan veritabanının birincil anahtarıdır .
- Satış görevlisi - ürünleri satan satış elemanının adını veren bir metin değeri. Bu alan, personel bilgilerini içeren başka bir tabloya yabancı bir anahtardır .
- Müşteri Kimliği - müşteri hesap numarasına karşılık gelen sayısal bir değer. Bu alan ayrıca müşteri hesap bilgilerini içeren bir tabloya başvuran yabancı bir anahtardır.
- Gelir - satışın dolar tutarına karşılık gelen sayısal bir değer.
Satış temsilcileri için performans değerlendirmeleri 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ı geri alan basit bir sorgu yazabilirsiniz:
SELECT * Siparişler LOM 'Jim' GİBİ Satış SiparişleriBu, Jim tarafından yapılan satışlara karşılık gelen veritabanından tüm kayıtları alır:
OrderID Satış Temsilcisi CustomerID Geliri 12482 Jim 182 40000 12488 Jim 219 25000 12519 Jim 137 85000 12602 Jim 182 10000 12741 Jim 155 90000 Bu bilgileri gözden geçirebilir ve performans istatistiklerine ulaşmak için bazı manuel hesaplamalar yapabilirsiniz, ancak bu, şirketteki her satış elemanı için tekrar etmeniz gerekecek sıkıcı bir görev olacaktır. Bunun yerine, bu çalışmayı şirketteki her satış temsilcisi için istatistikleri hesaplayan tek bir GROUP BY sorgusuyla değiştirebilirsiniz. Sorguyu yazmanız yeterlidir ve veritabanının Satış temsilcisi alanına dayalı sonuçları gruplandırması gerektiğini belirtirsiniz. Daha sonra, sonuçlarla ilgili hesaplamaları gerçekleştirmek için SQL toplama işlevlerinden herhangi birini kullanabilirsiniz.
İşte bir örnek. Aşağıdaki SQL deyimini çalıştırdıysanız:
Aşağıdaki sonuçları alırsınız:
Satış Temsilcisi Toplam En Küçük En Ortalama Ortalama Jim 250000 10000 90000 50000 5 Mary 342000 24000 102000 57000 6 Bob 118000 4000 36000 39333 3Görebildiğiniz gibi, bu güçlü işlev, bir SQL sorgusundan küçük raporlar üretmenize ve performans incelemelerini yürüten yöneticiye değerli iş zekası sağlamanıza olanak tanır. GROUP BY deyimi genellikle bu amaçla veritabanlarında kullanılır ve DBA'nın püf noktalarında değerli bir araçtır.