İngilizce dilinde oku

Aracılığıyla paylaş


RANK

Şunlar için geçerlidir:Hesaplanan sütunHesaplanan tabloMeasureGörsel hesaplama

Belirtilen bölüm içindeki geçerli bağlamın sıralamasını, belirtilen düzene göre sıralanmış olarak döndürür. If eşleşme bulunamıyorsa rankblank.

Sözdizimi

DAX
RANK ( [<ties>][, <relation> or <axis>][, <orderBy>][, <blanks>][, <partitionBy>][, <matchBy>][, <reset>] )

Parametre

Terim Tanım
ties (İsteğe bağlı) İki or daha fazla satır bağlı olduğunda sıralamanın nasıl işleneceğini tanımlar. belirtilen
If desteklenen value DENSE, or SKIP şeklindedir.
If atlanmış:
- Atla varsayılanları
relation (İsteğe bağlı) Çıkış satırının döndürüldiği tablo ifadesi. belirtilen
If, orderByandpartitionByall sütunların bu sütundan gelmesi gerekir.
If atlanır:
- orderBy açıkça belirtilmelidir.
- AllorderByandpartitionBy sütunların tek bir tablodan and tam olarak nitelenmiş olması gerekir.
- varsayılan olarak orderByandpartitionByall sütunlarının ALLSELECTED() olarak ayarlanır.
axis (İsteğe bağlı) Görsel şeklindeki bir eksen. Yalnızca görsel hesaplamalarda kullanılabilir and yerine relation.
orderBy (İsteğe bağlı) Her bölümün nasıl sıralandığını define sütunları içeren bir ORDERBY() yan tümcesi.
If atlanır:
- relation açıkça belirtilmelidir.
- partitionBy'de önceden belirtilmiş notrelation her sütuna göre sıralama varsayılanlarıdır.
blanks (İsteğe bağlı) Sıralama sırasında blankvalues nasıl işleneceğini tanımlayan bir numaralandırma.
Desteklenen values şunlardır:
  • KEEP (varsayılan value), sayısal values davranışının blankvalues sıfır and negatif valuesarasında sıralandığı . Dizelerin davranışı, boş dizeler de dahil olmak üzere all dizelerden önce sıralanmış blankvalues.
  • FIRST, artan or azalan sıralama düzenine bakılmaksızın boşluklar her zaman başlangıçta sıralanır.
  • LAST, artan or azalan sıralama düzenine bakılmaksızın boşluklar her zaman sonunda sıralanır.

ORDERBY() işlevinde blanks parametre and boşluklar her ikisi de belirtildiğinde, tek tek orderBy ifadedeki blanks ilgili orderBy ifadenin önceliğini alır andorderByblanks belirtilmeden ifadeler üst Window işlevindeki blanks parametreye uygun olacaktır.
partitionBy (İsteğe bağlı) relation nasıl bölümlendiğini define sütunları içeren PARTITIONBY() yan tümcesi.
If atlanırsa, relation tek bir bölüm olarak değerlendirilir.
matchBy (İsteğe bağlı) Geçerli satırı tanımlamak and verileri eşleştirmeyi define sütunları içeren MATCHBY() yan tümcesi.
reset (İsteğe bağlı) Yalnızca görsel hesaplamalarda kullanılabilir. Hesaplamanın sıfırlanması if gösterir and görsel şeklin sütun hiyerarşisinin hangi düzeyinde olduğunu gösterir. Kabul edilen values şunlardır: NONE, LOWESTPARENT, HIGHESTPARENT, or bir tamsayı. Davranış signtamsayıya bağlıdır:
- sıfır Ifor atlanırsa, hesaplama sıfırlanır not. NONEeşdeğerdir.
- pozitif If tamsayı, en yüksekten başlayarak, tanecikten bağımsız olarak sütunu tanımlar. HIGHESTPARENT 1'e eşdeğerdir.
- negatif If, tamsayı geçerli dilime göre en düşükten başlayan sütunu tanımlar. LOWESTPARENT -1 ile eşdeğerdir.

İade value

Geçerli bağlamın rank numarası.

Açıklamalar

  • her orderBy, partitionByandmatchBy sütununun, üzerinde çalışılan geçerli satırı aşağıdaki davranışla define yardımcı olmak için karşılık gelen bir dış value olması gerekir:

    • If tam olarak karşılık gelen bir dış sütun varsa, value kullanılır.
    • If karşılık gelen dış sütun yoktur, ardından:
      • RANK, allorderBy, partitionByandmatchBy karşılık gelen dış sütunu olmayan sütunları first belirler.
      • RANK üst bağlamda bu sütunlar için var olan values her birleşimi için, bir satır döndürülür andRANK değerlendirilir.
      • RANKson çıktısı rank bir sayıdır.
  • If matchBy varsa, RANK geçerli satırın kimliklerini matchByandpartitionBy sütunları kullanmayı dener.

  • orderBy and partitionBy içinde belirtilen sütunlar relationiçindeki her satırı benzersiz olarak tanımlayamaz If, iki or daha fazla satır aynı derecelendirmeye sahip olabilir and sıralama, ties parametresi tarafından belirlenir.

  • RANK, toplam satırlar için bir blankvalue döndürür. İfadenizi kapsamlı bir şekilde test edin.

  • RANK, SUM ile SUMXkarşılaştırması notRANKX karşılaştırır.

  • reset yalnızca görsel hesaplamalarda kullanılabilir andorderByorpartitionByile birlikte kullanılamaz. If reset var, axis belirtilebilir ancak relation belirtilemez.

Örnek 1 - hesaplanmış sütun

Aşağıdaki DAX sorgusu:

DAX
EVALUATE
ADDCOLUMNS(
    'DimGeography',
    "Rank",
    RANK(
    	DENSE,
    	'DimGeography',
    	ORDERBY(
    		'DimGeography'[StateProvinceName], desc,
    		'DimGeography'[City], asc),
        LAST,
    	PARTITIONBY(
    		'DimGeography'[EnglishCountryRegionName])))
ORDER BY [EnglishCountryRegionName] asc, [StateProvinceName] desc, [City] asc

StateProvinceName and City değerlerine göre her coğrafyayı aynı EnglishCountryRegionName ile sıralayan bir tablo döndürür. Blank orderBy sütun values sonunda sıralanır.

Örnek 2 - görsel hesaplama

Sorgular DAX aşağıdaki görsel hesaplama:

DAX
SalesRankWithinYear = RANK(DENSE, ORDERBY([SalesAmount], DESC), PARTITIONBY([CalendarYear]))

SalesRankAllHistory = RANK(DENSE, ORDERBY([SalesAmount], DESC))

Her month toplam satışa göre rank iki sütun oluşturun; her iki yeariçinde de tüm geçmişi and.

Aşağıdaki ekran görüntüsünde, first görsel hesaplama ifadesi and görsel matris gösterilmektedir:

görsel hesaplama

INDEX ORDERBY PARTITIONBY WINDOW ROWNUMBER