2016-10-12 12 views
1

私は総アイテムの割合を計算う出力テーブルの行を作成しようとしているの割合を計算する方法:Azureのアプリケーションの洞察照会 - 合計

Something like this: 
ITEM | COUNT | PERCENTAGE 
item 1 |  4  | 80 
item 2 |  1  | 20 

私は簡単の行を持つテーブルを取得することができますITEMとCOUNT、しかし私は列(%)でパーセンテージを計算することができるように、合計(この場合は5)を数値として得る方法を見つけることができません。

someTable 
| where name == "Some Name" 
| summarize COUNT = count() by ITEM = tostring(customDimensions.["SomePar"]) 
| project ITEM, COUNT, PERCENTAGE = (C/?)*100 

ありがとうございました。

答えて

2

このようなクエリを作成するのはちょっと面倒です。

私はAIのcustomEventsテーブルをベースにしました。だから見て、あなたの特定の状況に適応できるかどうかを確認してください。

レコードの合計数を含むテーブルを作成する必要があります。このテーブルを結合する必要があります。共通の列にのみ結合することができるので、常に同じ値を持つ列が必要です。私はそのためにappNameを選択します。

だから、全体のクエリは次のようになります。あなたは、両方のテーブルにそれを適用する必要があり、フィルタが必要な場合

let totalEvents = customEvents 
// | where name contains "Opened form" 
    | summarize count() by appName 
    | project appName, count_ ; 
customEvents 
// | where name contains "Opened form" 
    | join kind=leftouter totalEvents on appName 
    | summarize count() by name, count_ 
    | project name, totalCount = count_ , itemCount = count_1, percentage = (todouble(count_1) * 100/todouble(count_))  

これは出力:

enter image description here

+0

素晴らしいです。それは私が望んでいた方法で正確に動作させました私の「参加」ゲームは弱いので、その方向に行った試行はすべて失敗しました。ありがとうございました。 – mpnap

0

を、私は以下のがより直感的だと思います。セットをダミープロパティで拡張し、その上で結合を行います。

requests 
| summarize count() 
| extend a="b" 
| join (
    requests 
    | summarize count() by name 
    | extend a="b"  
) on a 
| project name, percentage = (todouble(count_1) * 100/todouble(count_)) 
関連する問題