2017-08-15 22 views
1

私のファクトテーブルに1つのDate列があり、いくつかのクライアントAPI要件のために、この列を文字列として書式化してSUMMARIZE関数を使用してデータをグループ化する必要があります。以下は、私が使用していたサンプルクエリは、次のとおりです。SSAS Tabular - DAX集計関数でFORMAT関数を使用する方法

EVALUATE(
CALCULATETABLE(
    ADDCOLUMNS(
     SUMMARIZE(
      'BreakTable', 
      'BreakTable'[Column1], 
      'BreakTable'[Column2], 
      'BreakTable'[DateColumn1], --This needs to be formatted 
     ), 
     "BreakCount",FORMAT('BreakTable'[BreakCount],"#,##0") 
    ) 
)) 

私は要約でFORMAT機能を使用してみましたが、それはデフォルトでは機能しません。私はFactTableに新しい列を追加することはできませんので、それを解決する必要があります。

これを達成する他の方法はありますか?どんな助けもありがとうございます。

提案ごとに、より多くの情報を追加してください。

私たちは、あなたがSELECTCOLUMNS()関数を使用することができますSQL Serverのに2014

答えて

0

を使用しています。この関数は、指定した列のみを返す点を除いて、ADDCOLUMNS()関数と同様に機能します。ここで

はあなたの既存のクエリを変更することができる方法の例です。

EVALUATE(
    SELECTCOLUMNS(
     SUMMARIZE(
      'BreakTable', 
      'BreakTable'[Column1], 
      'BreakTable'[Column2], 
      'BreakTable'[DateColumn1], 
     ), 
     "Column1", [Column1], 
     "Column2", [Column2], 
     "DateColumn1", FORMAT([DateColumn1],"YourFormatHere"), --Format your DateColumn here 
     "BreakCount",FORMAT('BreakTable'[BreakCount],"#,##0") 
    ) 
) 

EDIT:

SELECTCOLUMNS()関数は、SQL Server 2016およびアップからのみ利用可能であることに注意してください。

+0

SELECTCOLUMNSはSql Server 2016でのみ利用可能ですが、以前のバージョンのままです。 – AjayK

+1

真。おそらく、これを明確にするためにあなたの投稿にSql Server 2014用のタグを追加することができます:-) – dybzon

関連する問題