Bir sayının hesaplanan aralık serisi içinde nerede yer aldığına ilişkin bir Değişken (Dize) döndürür.
Söz dizimi
Bölüm ( sayı, başlangıç, durdurma, aralık)
Bölüm işlevinin söz diziminde şu bağımsız değişkenler bulunur:
Bağımsız değişken |
Açıklama |
sayı |
Gerekli. Aralıklara göre değerlendirmek istediğiniz tamsayı. |
başlangıç |
Gerekli. Genel sayı aralığının başlangıcı olan tamsayı. Sayı 0'dan küçük olamaz. |
durdurma |
Gerekli. Genel sayı aralığının sonu olan tamsayı. Sayı başlangıç değerine eşit veya daha küçük olamaz. |
aralık |
Gerekli. Toplam sayı aralığındaki bölümlerin boyutunu belirten tam sayı ( başlangıçveüst arasında). |
Açıklamalar
Partition işlevi, sayının düştüğü belirli aralığı tanımlar ve bu aralığı açıklayan bir Değişken (Dize) döndürür. Partition işlevi en çok sorgularda yararlıdır. 1 ile 1000, 1001 ile 2000 arasında sipariş değerleri gibi çeşitli aralıklar içinde kaç siparişin bulunduğunu gösteren bir seçme sorgusu oluşturabilirsiniz.
Aşağıdaki tabloda, üç başlatma, durdurma ve aralık bağımsız değişkeni kullanılarak aralıkların nasıl belirlendiği gösterilmektedir. İlk Aralık ve Son Aralık sütunları , Bölümün döndürdüğü değeri gösterir. Aralıklar lowervalue:uppervalue ile temsil edilir. Burada, aralığın alt ucu (altdeğer), iki nokta üst üste (:) ile aralığın üst ucundan (üst değer) ayrılır.
başlangıç |
durdurma |
aralık |
İlk önce |
İlk Aralık |
Son Aralık |
SondaDan 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 durdurma işleminin aralıklara göre eşit olarak bölünemez bir sayı kümesi tanımladığı sonucu gösterir. Aralık 20 olsa bile son aralık durma (11 sayı) olarak genişletilir.
Gerekirse, Bölüm yeterli boşluk içeren bir aralık döndürür, böylece iki nokta üst üste karakterin solunda ve sağında , durdurmada karakterler ve artı bir karakter olacak şekilde aynı sayıda karakter bulunur. Bu, Bölüm'leri diğer sayılarla kullanırsanız, elde edilen metnin sonraki sıralama işlemleri sırasında düzgün işlenmesini sağlar.
Aralık 1 ise, başlangıç ve durdurma bağımsız değişkenlerinden bağımsız olarak aralık sayı:sayı olur. Örneğin, aralık 1 ise, sayı 100 ve durdurma 1000 ise Bölüm " 100: 100" döndürür.
Bölümlerden herhangi biri Null ise, Bölüm bir Null döndürür.
Sorgu örnekleri
Expression |
Sonuçlar |
SELECT Partition(unitprice,40.240,20) AS PriceRange, count(productsales.unitprice) AS Count FROM productSales GROUP BY Partition(unitprice,40.240,20); |
"birimfiyat" alanındaki değerler için "start"(40) ile "stop"(240) arasında eşit "interval"(20) boyuta sahip bir aralık kümesi oluşturur ve ilgili aralıklardaki "birimfiyat" sayısını hesaplar. PriceRange sütunundaki aralıkları ve 'Count' sütunundaki sayıyı görüntüler. |
VBA örneği
Bu örnekte Navlun alanı içeren bir Siparişler tablonuz olduğu varsayılır. Navlun maliyetinin çeşitli aralıkların her birine düştüğü sipariş sayısını sayan bir seçim yordamı oluşturur. Partition işlevi önce bu aralıkları oluşturmak için kullanılır, ardından SQL Count işlevi her aralıktaki sipariş sayısını sayar. Bu örnekte Partition işlevinin bağımsız değişkenleri start = 0, stop = 500, interval = 50'dir. Bu nedenle ilk aralık 0:49 ve 500'e kadar olur.
SELECT DISTINCTROW Partition([freight],0, 500, 50) AS Range,
Count(Orders.Freight) AS Count FROM Orders GROUP BY Partition([freight],0,500,50);