Huomautus
Tämän sivun käyttö edellyttää valtuutusta. Voit yrittää kirjautua sisään tai vaihtaa hakemistoa.
Tämän sivun käyttö edellyttää valtuutusta. Voit yrittää vaihtaa hakemistoa.
Koskee seuraavia:Laskettu sarake
Laskettu taulukko
Mitta
Visualisoinnin laskenta
Palauttaa rivin absoluuttisessa sijainnissa sijaintiparametrin määrittämänä määritetyn osion sisällä määritetyn järjestyksen mukaisesti lajiteltuna. Jos nykyistä osiota ei voida päätellä yksittäiseksi osioksi, saatetaan palauttaa useita rivejä.
Syntaksi
INDEX(<position>[, <relation> or <axis>][, <orderBy>][, <blanks>][, <partitionBy>][, <matchBy>][, <reset>] )
Parametrit
Termi | Määritelmä |
---|---|
position |
Absoluuttinen sijainti (1-pohjainen), josta tiedot hankitaan: - position on positiivinen: 1 on ensimmäinen rivi, 2 on toinen rivi jne. - position on negatiivinen: -1 on viimeinen rivi, -2 on toinen viimeinen rivi jne. Kun position ei ole reunassa, tai nolla tai BLANK(), INDEX palauttaa tyhjän taulukon. Se voi olla mikä tahansa DAX lauseke, joka palauttaa skalaariarvon. |
relation |
(Valinnainen) Taulukkolauseke, josta tulos palautetaan. Jos tätä parametria käytetään visualisoinnin laskutoimituksissa, se hyväksyy akselin visuaalisessa muodossa.
Jos tämä on määritetty, kaikkien partitionBy sarakkeiden on oltava peräisin siitä tai liittyvästä taulukosta.
Jos jätetään pois: - orderBy on määritettävä eksplisiittisesti.
– Kaikkien orderBy - ja partitionBy -lausekkeiden on oltava sarakkeiden täydelliset nimet, ja niiden on oltava peräisin yksittäisestä taulukosta.
– ALLSELECTED() ja orderBy sarakkeiden oletusasetuksena on partitionBy . |
orderBy |
(Valinnainen) ORDERBY()-lause, joka sisältää lausekkeet, jotka määrittävät kunkin osion lajittelutavan.
Jos jätetään pois: - relation on määritettävä eksplisiittisesti.
: tämä määrittää oletusarvoisesti järjestyksen relation jokaisen sarakkeen mukaan, mitä ei ole vielä määritetty partitionBy . |
blanks |
(Valinnainen) Luettelointi, joka määrittää, miten tyhjiä arvoja käsitellään lajitellaan relation tai axis .
Tuetut arvot ovat seuraavat:
Huomaa, että kun blanks yksittäisten lausekkeiden ()-funktion parametrit ja tyhjät arvot määritetään, blanks yksittäisessä orderBy-lausekkeessa ORDERBY priorisointi prioriteetiksi asiaankuuluvalle orderBy-lausekkeelle ja orderBy-lausekkeet, joita ei blanks määritetä, seuraavat blanks parametria pääfunktiossa. |
partitionBy |
(Valinnainen) A PARTITIONBY() -lause, joka sisältää sarakkeet, jotka määrittävät, miten relation osioidaan. Jos tämä jätetään pois, relation käsitellään yksittäisenä osiona. |
matchBy |
(Valinnainen) A MATCHBY() -lause, joka sisältää sarakkeet, jotka määrittävät, miten tiedot vastaavat ja tunnistavat nykyisen rivin. |
reset |
(Valinnainen) Käytettävissä vain visualisoinnin laskutoimituksissa. Ilmaisee, nollataanko laskutoimitus ja millä tasolla visualisoinnin muodon sarakehierarkia on. Hyväksyttyjä arvoja ovat: kenttäviittaus sarakkeeseen nykyisessä visualisoinnin muodossa, NONE (oletus), LOWESTPARENT , HIGHESTPARENT tai kokonaisluku. Toiminta riippuu kokonaislukumerkistä: – Jos nolla tai jätetään pois, laskelmaa ei nollata. Vastaa NONE .
– Jos se on positiivinen, kokonaisluku tunnistaa sarakkeen aloittaen suurimmasta, viljasta riippumatta. HIGHESTPARENT vastaa lukua 1.
– Jos se on negatiivinen, kokonaisluku tunnistaa sarakkeen aloittaen pienimmästä tasosta suhteessa nykyiseen rakeeseen. LOWESTPARENT vastaa lukua -1. |
Palautusarvo
Rivi absoluuttisessa sijainnissa.
Huomautuksia
Jokaisella partitionBy
ja matchBy
sarakkeella on oltava vastaava ulkoarvo, jotta voidaan määrittää toimintatapa "nykyinen osio":
- Jos ulompaa saraketta on täsmälleen yksi vastaava, käytetään sen arvoa.
- Jos vastaavaa ulkosaraketta ei ole:
-
INDEX määrittää ensin kaikki
partitionBy
- jamatchBy
-sarakkeet, joissa ei ole vastaavaa ulkosaraketta. - INDEXpääkontekstin näiden sarakkeiden jokaisen olemassa olevien arvojen yhdistelmän INDEX arvioidaan ja palautetaan rivi.
- INDEXlopullinen tulos on näiden rivien liitto.
-
INDEX määrittää ensin kaikki
- Jos vastaavia ulkosarakkeita on useampi kuin yksi, palautetaan virhe.
Jos käytössä on matchBy
, INDEX yrittää käyttää matchBy
ja partitionBy
sarakkeita rivin tunnistamiseen.
Jos matchBy
ei ole eikä orderBy
ja partitionBy
määritettyjä sarakkeita voida yksilöidä jokaista relation
riviä:
- INDEX pyrkii selvittämään, kuinka monta lisäsaraketta jokaisen rivin yksilöimiseen tarvitaan.
- Jos tällaisia sarakkeita löytyy, INDEX liittää nämä uudet sarakkeet automaattisesti
orderBy
, ja kukin osio lajitellaan käyttämällä tätä uutta OrderBy-sarakkeiden joukkoa. - Jos tällaisia sarakkeita ei löydy, palautetaan virhe.
Palautetaan tyhjä taulukko, jos:
- PartitionBy-sarakkeen vastaavaa ulkoarvoa ei ole
relation
. -
position
arvo viittaa sijaintiin, jota ei ole osion sisällä.
Jos INDEX käytetään lasketussa sarakkeessa, joka on määritetty samassa taulukossa, johon relation
ja orderBy
jätetään pois, palautetaan virhe.
reset
voi käyttää vain visuaalisissa laskutoimituksissa, eikä sitä voi käyttää yhdessä orderBy
tai partitionBy
kanssa. Jos käytössä on reset
, axis
voidaan määrittää, mutta relation
ei.
Jos -arvo reset
on absoluuttinen (eli positiivinen kokonaisluku HIGHESTPARENT
tai kenttäviittaus) ja laskutoimitus arvioidaan hierarkian tavoitetasolla tai sen yläpuolella, laskelma nollautuu kunkin yksittäisen elementin osalta. Eli funktio arvioidaan osiossa, joka sisältää vain kyseisen tietyn elementin.
Esimerkki 1 – laskettu sarake
Seuraava kyselyn DAX:
EVALUATE INDEX(1, ALL(DimDate[CalendarYear]))
Palauttaa seuraavan taulukon:
DimDate[CalendarYear] |
---|
2005 |
Esimerkki 2 – laskettu sarake
Seuraava kyselyn DAX:
EVALUATE
SUMMARIZECOLUMNS (
FactInternetSales[ProductKey],
DimDate[MonthNumberOfYear],
FILTER (
VALUES(FactInternetSales[ProductKey]),
[ProductKey] < 222
),
"CurrentSales", SUM(FactInternetSales[SalesAmount]),
"LastMonthSales",
CALCULATE (
SUM(FactInternetSales[SalesAmount]),
INDEX(-1, ORDERBY(DimDate[MonthNumberOfYear]))
)
)
ORDER BY [ProductKey], [MonthNumberOfYear]
Palauttaa seuraavan taulukon:
FactInternetSales[ProductKey] | DimDate[MonthNumberOfYear] | [CurrentSales] | [LastMonthSales] |
---|---|---|---|
214 | 1 | 5423.45 | 8047.7 |
214 | 2 | 4968.58 | 8047.7 |
214 | 3 | 5598.4 | 8047.7 |
214 | 4 | 5073.55 | 8047.7 |
214 | 5 | 5248.5 | 8047.7 |
214 | 6 | 7487.86 | 8047.7 |
214 | 7 | 7382.89 | 8047.7 |
214 | 8 | 6543.13 | 8047.7 |
214 | 9 | 6788.06 | 8047.7 |
214 | 10 | 6858.04 | 8047.7 |
214 | 11 | 8607.54 | 8047.7 |
214 | 12 | 8047.7 | 8047.7 |
217 | 1 | 5353.47 | 7767.78 |
217 | 2 | 4268.78 | 7767.78 |
217 | 3 | 5773.35 | 7767.78 |
217 | 4 | 5738.36 | 7767.78 |
217 | 5 | 6158.24 | 7767.78 |
217 | 6 | 6998 | 7767.78 |
217 | 7 | 5563.41 | 7767.78 |
217 | 8 | 5913.31 | 7767.78 |
217 | 9 | 5913.31 | 7767.78 |
217 | 10 | 6823.05 | 7767.78 |
217 | 11 | 6683.09 | 7767.78 |
217 | 12 | 7767.78 | 7767.78 |
Esimerkki 3 – visuaalinen laskutoimitus
Seuraava visuaalinen laskutoimitus DAX kyselyitä:
SalesComparedToBeginningOfYear = [SalesAmount] - CALCULATE(SUM([SalesAmount]), INDEX(1, ROWS, HIGHESTPARENT))
SalesComparedToBeginningOfQuarter = [SalesAmount] - CALCULATE(SUM([SalesAmount]), INDEX(1, , -1))
Paranna taulukkoa siten, että se sisältää kullekin kuukaudelle:
- kokonaismyyntisumman,
: kokonaismyynnin määrän.
- ero kyseisen vuoden ensimmäiseen kuukauteen; - ja ero kyseisen vuosineljänneksen ensimmäiseen kuukauteen.
Alla olevassa näyttökuvassa näytetään visuaalinen matriisi ja ensimmäinen visuaalinen laskentalauseke: