det er nemt at hente oplysninger fra en tabeldatabase – bare Forespørg det med nogle grundlæggende funktioner! I denne artikel lærer vi, hvordan du forespørger en Tabelmodel med nogle af udtrykkene, undersøger resultaterne fra forespørgelse og analyserer data fra tabellerne.
krav
forudsætningerne for at forespørge er standard Server Management Studio 2014 eller nyere med en installeret SSAS tabelinstans og implementeret SSAS tabelmodel database.
miljøforberedelse
forespørgsel på en SSAS-tabelmodeldatabase med MDC finder sted i MDC Server Management Studio, i vinduet MDC-forespørgsel.
multidimensionelle udtryk (MDK) oversigt
MDK er ekspressionssprog, der kan forespørge og analysere multidimensionelle data i OLAP-terninger (som f.eks. Selvom den primært er designet til at forespørge en flerdimensionel modeldatabase, kan den også forespørge en tabelmodel database. På den anden side kan funktioner ikke forespørge multidimensionelle modeldatabaser, fordi søgeudtryk er specifikke for tabelmodeldatabaser.
strukturelt inkorporerer MDL specificeret syntaks. Da det ligner T-SL, er der nogle DDL-udsagn, som kan styre og organisere multidimensionelle datakonstruktioner. Dette gælder kun for SSAS multidimensionelle modeldatabaser.
med hensyn til kompleksitet er hovedtyperne af MDK-udtryk: konstant (numerisk, streng osv.), skalar og objektorienteret. Disse typer kombineres i komplekse udtryk, der svarer til udsagn og MDK-funktioner.
når vi taler om at forespørge en SSAS Tabelmodel database, er udtryk i denne artikel kombineret skalar / konstant type, som enkle Terningudtryk. Disse udtryk henter kun data fra en tabelformet terning, viser resultaterne i kolonne(er), bestiller data og forbereder dem til yderligere analyse.
forespørger SSAS Tabular model database med MDK
i begyndelsen af de mest MDK forespørgsler er Vælg sætning, efterfulgt med en fra-sætning. Det svarer meget til T-S (i modsætning til Evalueringserklæringen i):
1
2
3
|
vælg fra
|
denne forespørgsel er den enkleste, og den returnerer værdi 1 (“Sand”). Det betyder, at en Tabeldatabase er til stede.
valg af tabelproduktnavn fra Produkttabellen, vælg sætning i T-SEKL ser sådan ud:
1
2
3
|
vælg dbo.Produktnavn fra produkt
|
den tilsvarende erklæring skrevet i MDC ville være logisk:
1
2
3
4
5
|
vælg
{..}
fra
|
Bemærk bøjlerne {}, som er operatørerne som parentesen. De vedlægger udsagnene og gør det muligt at tilføje kompleksitet i forespørgselsskrivning. Forespørgsler er store og små bogstaver som f.eks.
denne forespørgsel henter produktnavnskolonne og Produkttabel fra en tabelformet terning, men i stedet for at vise den enkelte kolonne rejser den en eksekveringsfejl:
den væsentligste årsag er i typen af databasen model og syntaks: I sin syntaks genkender kolonner, rækker og andre elementer (specifikke for multidimensionelle databaser) som akser i forespørgslen – forestil dem som akserne på en 3D-terningmodel.
når du forespørger en SSAS Tabular model database, skal MDK genkende mindst to akser i dem: kolonner og rækker, for at vise data korrekt:
1
2
3
4
5
6
|
vælg
{..} på kolonner,
{..} på rækker
fra
|
nu sætter vi akserne i forespørgslen, og resultatet viser:
som det kan ses, vises alle værdier i kolonnen Produktnavn på kolonner i resultat, og rækker viser de tilsvarende år (i kolonnen regnskabsår) og antal varer (i dette tilfælde cykeldele). Derfor, i stedet for tre akser i MDK-forespørgsel, når du forespørger en SSAS Tabular model database kun to akser er nok til at hente data.
dette eksempel forespørger den samme tabel inden for begge akser:
1
2
3
4
5
6
|
vælg
{..} på kolonner,
{..} på rækker
fra
|
resultatet af forespørgslen viser:
værdien ” 1 “betyder” sand “i dette tilfælde, og værdi” (null) ” betyder, at der ikke er nogen relaterede data i kolonnen standardomkostninger.
-
visning af bestemt værdi (element) fra specificeret kolonne og ikke tom funktion
med MDH er det muligt at se den enkelte værdi fra kolonne i Tabelmodel database:
12345vælg{{..}.Vare (53)} Den 0frai dette eksempel viser resultatet det 53.element (tilfældigt valgt) fra kolonnen Modelnavn. Bemærk den definerede akse “på 0″ – i stedet for at definere” kolonner “(vi vil se i yderligere eksempler) eller” rækker”, placeres den enkelte værdi i begyndelsen af tabelvisningen af forespørgselsresultatet.
med inddragelse af ikke tom funktion, Enkelt beregnet værdi fra den særlige foranstaltning (Internet samlede salg) viser:
123456vælgikke tom{.} på kolonnerfra -
tuple-funktion
Tuple er angivet datasæt, en kombination af to eller flere dimensionsmedlemmer (i dette tilfælde to værdier fra kolonnen år).
12345vælg {.. : ..} på rækker,{.} på kolonnerfraBemærk de angivne værdier fra kolonnen år, der angiver årintervallet, og tilsvarende værdier fra Internet Total margen i forespørgselsresultatet.
-
børn og Medlemsudtryk
dette udtryk viser det datasæt, der er relateret til bestemte kolonner eller mål. Normalt præsenterer disse sæt værdier som børn eller medlemmer, og det er relateret til hierarki. De ordnes hierarkisk i forespørgselsresultatet.
12345vælg . PÅ KOLONNER,..Børn på rækkerfrai dette tilfælde er Internet samlede fragt foranstaltning baseret på beregning med fragt kolonne, og dermed kan de kombinere.
Bemærk, at seler ikke er til stede i forespørgslen, men forespørgslen er stadig gyldig uden dem.
brug denne forespørgsel til kun at vise værdierne fra en ønsket kolonne med BØRNEUDTRYKKET i overensstemmelse med en ikke-relateret kolonne:
123456vælg{..} på 0,{..børn} på 1fraBemærk: i dette udtryk står på 0 for på kolonner, og på 1 står for på rækker akse.
her er endnu et eksempel ved hjælp af MEDLEMSUDTRYKKET
12345Vælg . på kolonner,..medlemmer på rækkerfra -
hvor klausul
tilføjelse af hvor klausul er den ene måde at filtrere specifikke data fra en tabel, og det svarer til hvor klausul i T:
1234567vælg{..} på kolonner,{..} på rækkerfrahvor {..}værdien fra kolonnen Land Region navn, “Frankrig” er relateret til kolonnen by i geografi tabel, og forespørgslen inkluderet i resultat kun Byer fra Frankrig.
hvor-sætningen er faktisk skæreaksen, som tilføjer en ekstra dimension både i multidimensionelle og tabulære modeldatabaser.
-
CASE udtryk
dette udtryk er en sammenligning baseret på den logiske rækkefølge af elementer, som returnerer et forespørgselsresultat.
i dette eksempel skal du oprette en ny måling kaldet Sales Beløbsoversigt svarende til et specificeret værdiinterval fra Internet Total Sales measure:
123456789101112131415med medlem . assag .når 69712.49 derefter ‘Stor’når 1045.6 derefter ‘dårlig’ellers ‘(normal)’endevælg{., .} på kolonner,{..medlemmer} på rækkerfra
jeg håber du nød denne artikel, og glad for at spørge en SSAS Tabular model database med MDC!
- brug af Cube-og Subcube-udtryk
- MDK-Sprogreference (MDK)
- MDK-Forespørgselsgrundlag (analysetjenester)
- forfatter
- Seneste indlæg
Daniel arbejder i øjeblikket for
- sådan overvåges tempdb-databasen-6. juli 2017
- sådan overvåges den samlede SERVERINDEKSSTØRRELSE-12. juni 2017
- Sådan indstilles og bruges krypterede serverforbindelser-Maj 8, 2017