Π—Π°ΠΊΠ°Π·Π°Ρ‚ΡŒ курсовыС, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Π΅, Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚Ρ‹...
ΠžΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π½Π° Π·Π°ΠΊΠ°Π·. НСдорого!

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ структуры ΠΌΠ½ΠΎΠ³ΠΎΠΌΠ΅Ρ€Π½ΠΎΠ³ΠΎ Π°Π½Π°Π»ΠΈΠ·Π°

Π Π΅Ρ„Π΅Ρ€Π°Ρ‚ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈΠ£Π·Π½Π°Ρ‚ΡŒ ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒΠΌΠΎΠ΅ΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹

Π’Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ cube_expression ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ имя ΠΊΡƒΠ±Π° ΠΈΠ»ΠΈ ΠΏΠΎΠ΄Ρ€Π°Π·Π΄Π΅Π»Π° ΠΊΡƒΠ±Π°, ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π²Ρ‹ ΠΆΠ΅Π»Π°Π΅Ρ‚Π΅ ΠΈΠ·Π²Π»Π΅Ρ‡ΡŒ Π΄Π°Π½Π½Ρ‹Π΅. ΠšΡƒΠ±, ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΉ Π² ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠΈ FROM, Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ контСкстом ΠΊΡƒΠ±Π° (cube context), ΠΈ Π·Π°ΠΏΡ€ΠΎΡ MDX выполняСтся Π²Π½ΡƒΡ‚Ρ€ΠΈ этого контСкста. Π’ΠΎ Π΅ΡΡ‚ΡŒ, каТдая Ρ‡Π°ΡΡ‚ΡŒ выраТСния axis_expression Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠ·Π²Π»Π΅ΠΊΠ°Ρ‚ΡŒΡΡ ΠΈΠ· ΠΊΠΎΠ½Ρ‚Скста ΠΊΡƒΠ±Π°, ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ Π² ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠΈ FROM. Рассмотрим случай, ΠΊΠΎΠ³Π΄Π° ΠΊΡƒΠ± содСрТит Π΄Π°Π½Π½Ρ‹Π΅… Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΅Ρ‰Ρ‘ >

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ структуры ΠΌΠ½ΠΎΠ³ΠΎΠΌΠ΅Ρ€Π½ΠΎΠ³ΠΎ Π°Π½Π°Π»ΠΈΠ·Π° (Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚, курсовая, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ)

Запрос Π½Π° ΡΠ·Ρ‹ΠΊΠ΅ MDX прСдставляСт собой Π½Π°Π±ΠΎΡ€ ΠΊΠΎΠΌΠ°Π½Π΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ выглядит ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

[WITH [, …]].

SELECT [, […]].

FROM [].

[WHERE [slicer_expression]].

Π³Π΄Π΅: axis_specification — содСрТит описаниС осСй ΠΊΡƒΠ±Π°; cube_specification — содСрТит Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΊΡƒΠ±Π°; slicer_specification — содСрТит описаниС срСзов ΠΊΡƒΠ±Π°.

ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ слова WITH, SELECT, FROM ΠΈ WHERE Π² ΡΠΎΡ‡Π΅Ρ‚Π°Π½ΠΈΠΈ с Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΡΠΌΠΈ, ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌΠΈ Π·Π° Π½ΠΈΠΌΠΈ, принято Π½Π°Π·Ρ‹Π²Π°Ρ‚ΡŒ прСдлоТСниями (clause). Π’ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½Π½ΠΎΠΌ Π²Ρ‹ΡˆΠ΅ шаблонС запроса MDX Π² ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹Π΅ скобки Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ элСмСнты, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Π² ΠΎΠ΄Π½ΠΈΡ… запросах ΠΈ ΠΎΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Π² Π΄Ρ€ΡƒΠ³ΠΈΡ….

Π’Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ SELECT.

Π’ ΡΠ·Ρ‹ΠΊΠ΅ MDX Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ SELECT ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для задания Π½Π°Π±ΠΎΡ€Π° Π΄Π°Π½Π½Ρ‹Ρ…, содСрТащСго подмноТСство ΠΌΠ½ΠΎΠ³ΠΎΠΌΠ΅Ρ€Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…. ΠŸΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΡ WITH ΠΈ WHERE ΡΠ²Π»ΡΡŽΡ‚ΡΡ Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠ½ΠΈ Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ Π² ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹Π΅ скобки ([]). Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΏΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠΈΠΉ запрос выглядит ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

SELECT.

FROM [Adventure Works].

Π­Ρ‚ΠΎΡ‚ запрос MDX Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ СдинствСнноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅; ΠΊΠΎΡ€Ρ‚Π΅ΠΆ, ΡΡΡ‹Π»Π°ΡŽΡ‰ΠΈΠΉΡΡ Π½Π° Π½Π΅Π³ΠΎ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ для возвращСния этого значСния Π·Π°Π΄Π°Π½Π½Ρ‹Π΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Ρ‡Π»Π΅Π½Ρ‹ ΠΈΠ·ΠΌΠ΅Ρ€Π΅Π½ΠΈΠΉ.

ЀактичСскиС Π΄Π°Π½Π½Ρ‹Π΅ содСрТатся Π² ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΌ ΠΈΠ·ΠΌΠ΅Ρ€Π΅Π½ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ называСтся Measures. Если ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹ΠΉ Π²Ρ‹ΡˆΠ΅ запрос ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ΠΊ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡ€Ρƒ Analysis Services, Ρ‚ΠΎ Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ Π·Π°Π΄Π°Π½Π½Ρ‹ΠΉ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Ρ‡Π»Π΅Π½ измСрСния Measures, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ являСтся ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· Ρ€Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΡΡ‚Π΅ΠΉ ΠΊΡƒΠ±Π°. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ Π΄Π°Π½Π½ΠΎΠ³ΠΎ запроса являСтся Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½ΠΎΠ΅ ΠΏΡƒΡ‚Π΅ΠΌ Π°Π³Ρ€Π΅Π³Π°Ρ†ΠΈΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ всСх относящихся ΠΊ ΡΡ‚ΠΎΠΉ размСрности ячССк ΠΊΡƒΠ±Π° для Π·Π°Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ измСрСния ΠΊΡƒΠ±Π°.

ΠŸΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ WITH ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΡ… вычислСний ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ.

Π˜Π½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΡ SELECT языка MDX ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для извлСчСния подмноТСства ΠΌΠ½ΠΎΠ³ΠΎΠΌΠ΅Ρ€Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ· ΡΠ΅Ρ€Π²Π΅Ρ€Π° OLAP. язык MDX прСдоставляСт Π²Π°ΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΈΠ·Π²Π»Π΅ΠΊΠ°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΏΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΠΌ осям. Π’ ΡΠ·Ρ‹ΠΊΠ΅ MDX ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ синтаксис для инструкции SELECT:

SELECT [, […]].

Π’Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ axis_expression, ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ послС ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ слова SELECT, ссылаСтся Π½Π° ΠΈΠ·ΠΌΠ΅Ρ€Π΅Π½ΠΈΠ΅, ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰Π΅Π΅ Ρ‚Π΅ Π΄Π°Π½Π½Ρ‹Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ ΠΆΠ΅Π»Π°Π΅Ρ‚Π΅ ΠΈΠ·Π²Π»Π΅Ρ‡ΡŒ. Π­Ρ‚ΠΈ измСрСния Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ осСвыми измСрСниями (axis dimensions), ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ прСдставлСнныС ΠΈΠΌΠΈ Π΄Π°Π½Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ΅Ρ†ΠΈΡ€ΡƒΡŽΡ‚ΡΡ Π½Π° ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ оси. Для выраТСния axis_expression ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ синтаксис:

:= ON Axis (Π½ΠΎΠΌΠ΅Ρ€ оси) Π―Π·Ρ‹ΠΊ MDX прСдоставляСт Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Π΄ΠΎ 128 осСй Π² ΠΈΠ½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΠΈ SELECT. ΠŸΠ΅Ρ€Π²Ρ‹Π΅ ΠΏΡΡ‚ΡŒ осСй ΠΈΠΌΠ΅ΡŽΡ‚ псСвдонимы. Π­Ρ‚ΠΎ оси COLUMNS (столбцы), ROWS (строки), PAGES (страницы), SECTIONS (Ρ€Π°Π·Π΄Π΅Π»Ρ‹) ΠΈ CHAPTERS (Π³Π»Π°Π²Ρ‹). ΠŸΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ оси ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ слова Axis, Π·Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ слСдуСт Π½ΠΎΠΌΠ΅Ρ€ оси. Рассмотрим ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€.

SELECT Measures. [Internet Sales Amount] ON COLUMNS,.

[Customers]. [Country]. MEMBERS on ROWS,.

[Product]. [Product Line]. MEMBERS on PAGES.

Π’ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΉ Π²Ρ‹ΡˆΠ΅ инструкции SELECT ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Ρ‚Ρ€ΠΈ оси. Π’ ΡΡ‚ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· ΠΈΠ·ΠΌΠ΅Ρ€Π΅Π½ΠΈΠΉ Measures, Customers ΠΈ Product ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ΡΡ Π½Π° Ρ‚Ρ€Π΅Ρ… осях, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΡ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ осСвыС измСрСния.

ΠŸΡ€ΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ инструкции SELECT Π²Ρ‹ ΡΠΎΠ·Π΄Π°Π΅Ρ‚Π΅ осСвоС ΠΈΠ·ΠΌΠ΅Ρ€Π΅Π½ΠΈΠ΅. Π˜Π½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΡ SELECT Π½Π°Π·Π½Π°Ρ‡Π°Π΅Ρ‚ Π½Π°Π±ΠΎΡ€ осям COLUMNS ΠΈ ROWS (Π° Ρ‚Π°ΠΊΠΆΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ осям, Ссли Π² Π²Π°ΡˆΠ΅ΠΌ запросС ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π±ΠΎΠ»Π΅Π΅ Π΄Π²ΡƒΡ… осСй). Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ ΠΈΠ·ΠΌΠ΅Ρ€Π΅Π½ΠΈΡ срСза Π΄Π°Π½Π½Ρ‹Ρ… (slicer dimension), ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ описываСтся Π΄Π°Π»Π΅Π΅ Π² ΡΡ‚ΠΎΠΉ Π³Π»Π°Π²Π΅, осСвоС ΠΈΠ·ΠΌΠ΅Ρ€Π΅Π½ΠΈΠ΅ ΠΈΠ·Π²Π»Π΅ΠΊΠ°Π΅Ρ‚ ΠΈ ΡΠΎΠ΄Π΅Ρ€ΠΆΠΈΡ‚ Π΄Π°Π½Π½Ρ‹Π΅ для Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Ρ‡Π»Π΅Π½ΠΎΠ², Π° Π½Π΅ Π΄Π»Ρ СдинствСнного Ρ‡Π»Π΅Π½Π°.

Π’Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ FROM.

ΠŸΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ FROM Π² Π·Π°ΠΏΡ€ΠΎΡΠ΅ MDX опрСдСляСт ΠΊΡƒΠ±, ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΈΠ·Π²Π»Π΅ΠΊΠ°ΡŽΡ‚ΡΡ Π΄Π°Π½Π½Ρ‹Π΅ для Π°Π½Π°Π»ΠΈΠ·Π°. ΠŸΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ FROM ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ для любого запроса MDX.

Для прСдлоТСния FROM ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ синтаксис:

FROM.

Π’Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ cube_expression ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ имя ΠΊΡƒΠ±Π° ΠΈΠ»ΠΈ ΠΏΠΎΠ΄Ρ€Π°Π·Π΄Π΅Π»Π° ΠΊΡƒΠ±Π°, ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π²Ρ‹ ΠΆΠ΅Π»Π°Π΅Ρ‚Π΅ ΠΈΠ·Π²Π»Π΅Ρ‡ΡŒ Π΄Π°Π½Π½Ρ‹Π΅. ΠšΡƒΠ±, ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΉ Π² ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠΈ FROM, Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ контСкстом ΠΊΡƒΠ±Π° (cube context), ΠΈ Π·Π°ΠΏΡ€ΠΎΡ MDX выполняСтся Π²Π½ΡƒΡ‚Ρ€ΠΈ этого контСкста. Π’ΠΎ Π΅ΡΡ‚ΡŒ, каТдая Ρ‡Π°ΡΡ‚ΡŒ выраТСния axis_expression Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠ·Π²Π»Π΅ΠΊΠ°Ρ‚ΡŒΡΡ ΠΈΠ· ΠΊΠΎΠ½Ρ‚Скста ΠΊΡƒΠ±Π°, ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ Π² ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠΈ FROM.

SELECT [Measures]. [Internet Sales Amount] ON COLUMNS.

FROM [Adventure Works].

Π’Ρ‹ΡˆΠ΅ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ запроса MDX, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΠ·Π²Π»Π΅ΠΊΠ°Π΅Ρ‚ Ρ€Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒ [Internet Sales Amount] ΠΏΠΎ ΠΎΡΠΈ X. Указанная Ρ€Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒ извлСкаСтся ΠΈΠ· ΠΊΠΎΠ½Ρ‚Скста ΠΊΡƒΠ±Π° [Adventure Works].

Π’Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ WHERE.

Для задания условия ΠΎΡ‚Π±ΠΎΡ€Π° примСняСтся ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ WHERE. Π˜Π½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΡ WHERE ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°Π΅Ρ‚ Π½Π°Π±ΠΎΡ€ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² запроса с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ критСрия.

SELECT Measures. [Sales] ON COLUMS,.

[Product]. [Product Line]. MEMBERS on ROWS.

FROM ProductsCube.

WHERE ([Product]. [Color]. Silver]).

Π”Π²Π° столбца, Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌΡ‹Ρ… запросом SQL, Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ прСдставлСны ΠΏΠΎ ΠΎΡΡΠΌ COLUMNS ΠΈ ROWS. УсловиС Π² ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠΈ WHERE запроса SQL Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΎ Π² ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ WHERE запроса MDX, ΡΠ²Π»ΡΡŽΡ‰Π΅Π΅ΡΡ срСзом ΠΊΡƒΠ±Π°, содСрТащим ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ Ρ‚ΠΎΠ²Π°Ρ€Π°Ρ… сСрСбристого Ρ†Π²Π΅Ρ‚Π°.

Π˜Π·ΠΌΠ΅Ρ€Π΅Π½ΠΈΠ΅ срСза (slicer dimension) создаСтся ΠΏΡ€ΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ прСдлоТСния WHERE; это Ρ„ΠΈΠ»ΡŒΡ‚Ρ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΡΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π½Π΅ΠΆΠ΅Π»Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ измСрСния ΠΈ Ρ‡Π»Π΅Π½Ρ‹. Π˜Π·ΠΌΠ΅Ρ€Π΅Π½ΠΈΠ΅ срСза Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ ΠΈ Π²ΡΠ΅ Ρ‚Π΅ ΠΎΡΠΈ ΠΊΡƒΠ±Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ явно Π² ΠΎΡΠΈ, ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Π΅ Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ запроса. Π—Π°Π΄Π°Π½Π½Ρ‹Π΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Ρ‡Π»Π΅Π½Ρ‹ ΠΈΠ΅Ρ€Π°Ρ€Ρ…ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ Π² ΠΎΡΠΈ запроса, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π² ΠΎΡΡΡ… срСза Π΄Π°Π½Π½Ρ‹Ρ…. Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ измСрСния срСза являСтся ΠΎΠ΄ΠΈΠ½ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ. Если Π² ΠΎΡΠΈ срСза ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΎ нСсколько ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ, Ρ‚ΠΎ ΠΎΠ½ΠΈ Π±ΡƒΠ΄ΡƒΡ‚ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Π½Ρ‹ ΠΊΠ°ΠΊ Π½Π°Π±ΠΎΡ€, Π° ΠΈΡ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΡ — Π°Π³Ρ€Π΅Π³ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹ с ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ размСрности, Π·Π°Π΄Π°Π½Π½ΠΎΠΉ Π² Π·Π°ΠΏΡ€ΠΎΡΠ΅, ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π°Π³Ρ€Π΅Π³Π°Ρ†ΠΈΠΈ ΠΈΠ· ΡΡ‚ΠΎΠΉ размСрности.

Π’Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ WITH.

Π’ΠΈΠΏΠΈΡ‡Π½Ρ‹ΠΌΠΈ вычислСниями, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡΠΎΠ·Π΄Π°ΡŽΡ‚ΡΡ с ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ прСдлоТСния WITH, ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½Ρ‹Π΅ Π½Π°Π±ΠΎΡ€Ρ‹ ΠΈ Π²Ρ‹Ρ‡ΠΈΡΠ»ΡΠ΅ΠΌΡ‹Π΅ Ρ‡Π»Π΅Π½Ρ‹. ΠšΡ€ΠΎΠΌΠ΅ этого, ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ WITH обСспСчиваСт Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ вычислСния ΠΏΠΎ ΡΡ‡Π΅ΠΉΠΊΠ°ΠΌ, Π·Π°Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ ΠΊΡƒΠ± Π² ΠΊΡΡˆ Analysis Services для ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΡ выполнСния запроса, ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ содСрТимоС ячССк с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π²Ρ‹Π·ΠΎΠ²Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΈΠ· Π²Π½Π΅ΡˆΠ½ΠΈΡ… Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ, Π° Ρ‚Π°ΠΊΠΆΠ΅ позволяСт Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ слоТныС ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ Ρ‚ΠΈΠΏΠ° порядка вычислСния ΠΈ ΠΎΡ‡Π΅Ρ€Π΅Π΄Π½ΠΎΡΡ‚ΠΈ ΠΏΡ€ΠΎΡ…ΠΎΠ΄Π°.

Для прСдлоТСния WITH ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ синтаксис.

[WITH [, …]].

ΠŸΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ WITH позволяСт ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ нСсколько вычислСний Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΎΠ΄Π½ΠΎΠΉ инструкции. Π’Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ formula_expression Π²Π°Ρ€ΡŒΠΈΡ€ΡƒΠ΅Ρ‚ΡΡ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΠΈ ΠΎΡ‚ Ρ‚ΠΈΠΏΠ° вычислСний. ΠŸΡ€ΠΈ использовании Π² ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠΈ WITH Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… вычислСний ΠΎΠ½ΠΈ ΠΎΡ‚Π΄Π΅Π»ΡΡŽΡ‚ΡΡ Π΄Ρ€ΡƒΠ³ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³Π° запятыми.

Π˜ΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½Ρ‹Π΅ Π½Π°Π±ΠΎΡ€Ρ‹.

Π˜ΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ — это просто псСвдоним для ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠ³ΠΎ выраТСния MDX, ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰Π΅Π³ΠΎ Π½Π°Π±ΠΎΡ€. Π’Π°ΠΊΠΎΠΉ псСвдоним ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² Π»ΡŽΠ±ΠΎΠΌ мСстС Π²Π½ΡƒΡ‚Ρ€ΠΈ запроса вмСсто Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ΅ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰Π΅Π΅ Π½Π°Π±ΠΎΡ€.

Рассмотрим случай, ΠΊΠΎΠ³Π΄Π° ΠΊΡƒΠ± содСрТит Π΄Π°Π½Π½Ρ‹Π΅ ΠΎ ΠΏΡ€ΠΎΠ΄Π°ΠΆΠ°Ρ… для ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ² ΠΈΠ· Ρ€Π°Π·Π½Ρ‹Ρ… стран. ΠŸΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, Ρ‡Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ ΠΈΠ·Π²Π»Π΅Ρ‡ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ для ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ² ΠΈΠ· Π•Π²Ρ€ΠΎΠΏΡ‹. Для этого Π²Π°ΠΌ потрСбуСтся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‡Π»Π΅Π½Ρ‹ ΠΈΠ΅Ρ€Π°Ρ€Ρ…ΠΈΠΈ Customer (ΠšΠ»ΠΈΠ΅Π½Ρ‚) для Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… стран Π•Π²Ρ€ΠΎΠΏΡ‹. Π’ Ρ‚Π°ΠΊΠΎΠΌ случаС ваш запрос MDX ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ.

SELECT Measures. Internet Sales Amount] on COLUMNS,.

{[Customer]. Country]. Country]. &[France],.

[Customer]. Country]. Country]. &[Germany],.

[Customer]. Country]. Country]. &[United Kingdom]} ON ROWS.

FROM [Adventure Works].

Для ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Π½Π°Π±ΠΎΡ€Π° Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ formula_expression Π² ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠΈ WITH выглядит ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

Formula_expression := SET AS [']['].

Π’ ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ псСвдонима ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ любоС имя, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π·Π°ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ Π² ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹Π΅ скобки. Π’ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ, ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‰Π΅ΠΌ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ слова SET ΠΈ AS. Набор ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΉ Π½Π΅ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ Π² ΠΎΠ΄ΠΈΠ½Π°Ρ€Π½Ρ‹Π΅ ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠΈ (''). ΠžΠ΄ΠΈΠ½Π°Ρ€Π½Ρ‹Π΅ ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ лишь для обСспСчСния ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΉ совмСстимости, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠ½ΠΈ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ΡΡ для вСрсии Analysis Services 2000.

ВычисляСмыС Ρ‡Π»Π΅Π½Ρ‹.

ВычисляСмыС Ρ‡Π»Π΅Π½Ρ‹ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ собой вычислСния, опрСдСляСмыС выраТСниями MDX. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ вычисляСмыС Ρ‡Π»Π΅Π½Ρ‹ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚, основанный Π½Π° Π²Ρ‹Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΠΈ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ MDX, Π° Π½Π΅ ΠΏΡ€ΠΎΡΡ‚ΠΎ ΠΈΠ·Π²Π»Π΅Ρ‡ΡŒ исходныС фактичСскиС Π΄Π°Π½Π½Ρ‹Π΅. Π’ ΡΠ·Ρ‹ΠΊΠ΅ MDX для создания вычисляСмых Ρ‡Π»Π΅Π½ΠΎΠ² Π² ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠΈ WITH ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ слова MEMBER ΠΈ AS.

WITH MEMBER [MEASURES]. Profit] AS '([Measures]. Internet Sales.

Amount] - [Measures]. Total Product Cost])'.

SELECT [MEASURES]. Profit] ON COLUMNS,.

[Customer]. Country]. MEMBERS ON ROWS.

FROM [Adventure Works].

Π’ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ 1 вычисляСмый Ρ‡Π»Π΅Π½ Profit (ΠŸΡ€ΠΈΠ±Ρ‹Π»ΡŒ) ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ ΠΊΠ°ΠΊ Ρ€Π°Π·Π½ΠΎΡΡ‚ΡŒ размСрностСй [Internet Sales Amount] (Π‘ΡƒΠΌΠΌΠ° Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚-ΠΏΡ€ΠΎΠ΄Π°ΠΆ) ΠΈ [Total Product Cost] (ΠžΠ±Ρ‰Π°Ρ ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒ Ρ‚ΠΎΠ²Π°Ρ€Π°). ΠŸΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ Π΄Π°Π½Π½ΠΎΠ³ΠΎ запроса для ΠΊΠ°ΠΆΠ΄ΠΎΠΉ страны вычисляСмый Ρ‡Π»Π΅Π½ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ вычислСния выраТСния MDX.

ΠŸΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ вСсь тСкст
Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡƒ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Ρ€Π°Π±ΠΎΡ‚ΠΎΠΉ