5

明確なカウントを実行できるが、ヌル値を除外できる計算メジャーを作成する方法はありますか?たとえば、私が持っている場合:10、20、20、null; 明確な数は3ですが、答えを2にすることはできますか?

4

5 に答える 5

0

メジャーがnullでない場所にwhere条件を設定します

于 2012-12-17T12:26:46.483 に答える
0

あなたはこれを試すことができます:

with cte ( "counter" ) as
( 
    select 
        1 as "counter" 
    from 
        "YOURTABLE" 
    group by 
        "COLUMNNAME" 
    having ( "COLUMNNAME" IS NOT NULL )
)
select SUM( "counter" ) from cte

@ 編集:

非常に簡単なバリアント:

SELECT COUNT( DISTINCT "COLUMNNAME" ) FROM "TABLENAME"
于 2012-12-18T19:47:05.750 に答える
0

同じ問題があります-マイクロソフトがそれを無視するのは驚くべきことです...唯一の解決策は、個別のカウントメジャーグループのビューを構築することであるように見えます

http://www.sqlservercentral.com/Forums/Topic810069-17-1.aspx#bm1213461

于 2013-02-14T22:04:22.347 に答える
0

すべての回答ありがとうございます。しかし、ここで私は自分のニーズに最適なソリューションを見つけました:http: //richardlees.blogspot.com/2008/10/alternative-to-physical-distinct-count.html

以下を使用して計算メンバーを作成する。

count(nonempty({[DimName].[HierarchyName].[LevelName].members-[DimName].[HierarchyName][All].UNKNOWNMEMBER},[Measures].[MyMeasure]))
于 2013-02-25T03:28:10.547 に答える
0

値がnullでない場所と、トリックを実行する値 "!=''"を追加するだけです。

于 2013-03-08T20:45:00.210 に答える