Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

MDX Hitung dari waktu ke waktu tanpa hierarki tertentu

Saya memiliki masalah serupa, dan menyelesaikannya sebagai berikut:

SSAS tidak dapat benar-benar memberi tahu Anda di hierarki mana Anda berada, jadi Anda tidak dapat melakukan ini sesederhana pada contoh Anda. namun, berikut ini berhasil untuk saya. Saya telah mencoba mengubahnya menjadi penamaan Anda, jadi periksa kesalahan sintaks yang jelas...

Ini semua masuk dalam skrip perhitungan kubus Anda, Anda mungkin perlu menggunakan 'tampilan skrip' alih-alih 'tampilan blok'.

CREATE MEMBER CURRENTCUBE.[Measures].[Commitment Total] AS NULL;

Kemudian tentukan nanti dalam skrip untuk setiap hierarki:

SCOPE (DESCENDANTS([Date Dim].[FY Hierarchy],,AFTER));    
[Measures].[Commitment Total] =
sum(
[Date Dim].[FY Hierarchy].[Fiscal Year].members(0):[Date Dim].[FY Hierarchy].currentMember
, [Measures].[Commitment Count]);
END SCOPE;

SCOPE (DESCENDANTS([Date Dim].[CY Hierarchy],,AFTER));    
[Measures].[Commitment Total] =
sum(
[Date Dim].[CY Hierarchy].[Calendar Year].members(0):[Date Dim].[CY Hierarchy].currentMember
, [Measures].[Commitment Count]);
END SCOPE;

Sekarang akan berperilaku sesuai, tergantung pada hierarki yang ada dalam kueri. Perhatikan bahwa ini akan menjadi NULL jika tidak ada hierarki dalam kueri.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. kueri yang akan menduplikasi catatan berdasarkan kuantitas

  2. Apa itu Stored Procedure dan Mengapa Stored Procedure?

  3. Arti tanda kurung siku [] dalam perancang tabel MS-SQL?

  4. Bagaimana cara melewatkan parameter nilai tabel ke prosedur tersimpan dari .net code

  5. Lantai tanggal di SQL server