Hesaplanan bir aralık dizisi içinde bir sayının nerede olduğunu gösteren bir Variant (String) değeri döndürür.
Söz dizimi
Bölüm(sayı, başlangıç, durdurma, aralık)
Bölüm işlevinin söz diziminde aşağıdaki bağımsız değişkenler bulunur:
| Bağımsız değişken | Açıklama |
|---|---|
| Numara | Gerekli. Aralıklara göre değerlendirmek istediğiniz tamsayıdır. |
| Başla | Gerekli. Genel sayı aralığının başlangıcı olan tamsayı. Sayı 0'dan küçük olamaz. |
| Durdur | Gerekli. Genel sayı aralığının sonu olan tamsayı. Sayı, başlangıca eşit veya başlangıçtan küçük olamaz. |
| aralık | Gerekli. Tüm sayı aralığında ( başlangıç ve durdurma arasındaki) bölümlerin boyutunu belirten tam sayı. |
Açıklamalar
Partition işlevi, sayının düştüğü belirli aralığı tanımlar ve bu aralığı tanımlayan bir Variant (String) döndürür. Partition işlevi en çok sorgularda kullanışlıdır. Çeşitli aralıklar içinde kaç siparişin bulunduğunu gösteren bir seçme sorgusu oluşturabilirsiniz (örneğin, 1 - 1000, 1001 - 2000 vb. sipariş değerleri).
Aşağıdaki tabloda, başlangıç, durdurma ve aralık bağımsız değişkenlerinden oluşan üç küme kullanılarak aralıkların nasıl belirlendiği gösterilmektedir. İlk Aralık ve Son Aralık sütunları, Bölümün ne döndürdüğünü gösterir. Aralıklar lowervalue:uppervalue ile temsil edilir; burada aralığın alt ucu (lowervalue) aralığın üst ucundan (uppervalue) iki nokta üst üste (:) ile ayrılır.
| Başla | Durdur | aralık | İlkinden Önce | Birinci Menzil | Son Aralık | Sondan Sonra |
|---|---|---|---|---|---|---|
| 0 | 99 | 5 | " :-1" | " 0: 4" | " 95: 99" | " 100: " |
| 20 | 199 | 10 | " : 19" | " 20: 29" | " 190: 199" | " 200: " |
| 100 | 1010 | 20 | " : 99" | " 100: 119" | " 1000: 1010" | " 1011: " |
Yukarıda gösterilen tabloda, üçüncü satır, başlangıç ve durdurmaaralığa göre eşit olarak bölünemeyen bir sayı kümesi tanımladığında sonucu gösterir. Aralık 20 olsa bile son aralık durağa (11 sayı) kadar genişler.
Gerekirse, Bölüm, iki nokta üst üste işaretinin solunda ve sağında, durdaki karakterlerle aynı sayıda karakter ve artı bir olacak şekilde yeterli miktarda boşluk içeren bir aralık döndürür. Bu, Bölüm'ü diğer sayılarla birlikte kullanırsanız, elde edilen metnin sonraki tüm sıralama işlemlerinde düzgün işlenmesini sağlar.
Aralık 1 ise, başlangıç ve bitiş bağımsız değişkenlerinden bağımsız olarak aralık sayı:sayı olur. Örneğin, aralık 1, sayı 100 ve durdurma 1000 ise, Bölüm " 100: 100" döndürür.
Bölümlerden herhangi biri Null olduğunda, PartitionNull döndürür.
Sorgu örnekleri
| İfade | Sonuçlar |
|---|---|
| SELECT Bölüm(birimfiyat,40,240,20) AS FiyatAralığı, say(ürünsatış.birimfiyat) AS Count FROM productSales GROUP BY Partition(birimfiyat,40,240,20); | "BirimFiyat" alanındaki değerler için "başlangıç"(40) ile "dur"(240) arasında eşit "aralık"(20) boyutunda bir aralık kümesi oluşturur ve ilgili aralıklardaki "birimfiyat" sayısını hesaplar. FiyatAralığı sütununda aralıkları ve 'Sayı' sütununda sayıyı görüntüler. |
VBA örneği
Bu örnekte, Navlun alanı içeren bir Siparişler tablonuz olduğu varsayılmaktadır. Navlun maliyetinin çeşitli aralıkların her birine düştüğü sipariş sayısını sayan bir seçim yordamı oluşturur. Bu aralıkları oluşturmak için önce Partition işlevi kullanılır, ardından SQL Count işlevi her aralıktaki sipariş sayısını sayar. Bu örnekte, Bölüm işlevinin bağımsız değişkenleri başlangıç = 0, durdurma = 500, aralık = 50 şeklindedir. Bu nedenle ilk aralık 0:49 olacaktır ve bu şekilde 500'e kadar devam eder.
SELECT DISTINCTROW Partition([freight],0, 500, 50) AS Range,
Count(Orders.Freight) AS Count
FROM Orders
GROUP BY Partition([freight],0,500,50);