Sql server 创建度量值以计算表中的百分比
通常在表格中计算%I创建一个度量并使用以下逻辑 SUM([MEASURE_1])/SUM([MEASURE_2]) 然而,当使用一个度量值和一个已经聚合的度量值时,我试图得到%的值,我得到以下错误 参数为SUM(聚合函数已经是聚合,无法进一步聚合) 我的百分比是计算表1中的策略计数(这是一个度量值)与我必须创建的度量值2之间的百分比差异,以获得表2中的策略计数,如下所示:计数([policy])。我使用的是SQL Server数据库 有没有办法解决这个问题 谢谢 度量值1是表1中的计数,数据如下所示 度量值2来自表2,我在表2中创建了一个保单编号的计数,数据如下所示 这两个表根据代理编号进行连接 表1结构Sql server 创建度量值以计算表中的百分比,sql-server,tableau-api,Sql Server,Tableau Api,通常在表格中计算%I创建一个度量并使用以下逻辑 SUM([MEASURE_1])/SUM([MEASURE_2]) 然而,当使用一个度量值和一个已经聚合的度量值时,我试图得到%的值,我得到以下错误 参数为SUM(聚合函数已经是聚合,无法进一步聚合) 我的百分比是计算表1中的策略计数(这是一个度量值)与我必须创建的度量值2之间的百分比差异,以获得表2中的策略计数,如下所示:计数([policy])。我使用的是SQL Server数据库 有没有办法解决这个问题 谢谢 度量值1是表1中的计数,数据如下
[UNIQUEPOL_CNT]
,[UNIQUEAGT_CNT]
,[VECHICLE_TXT]
,[VEHICLE_DESC]
,[VEHICLE_CD]
,[CODE_DESC]
,[POLICY_ID]
,[POLICY_NBR]
,[STATE_CD]
,[AGENT_NBR]
,[AGENT_NM]
,[PROP_ID]
,[WRITTEN_DT]
,[PURCHASE_DT]
,[SUSP_IND]
,[SUSPEND_DT]
,[BIND_ID]
,[INSURED_NM]
,[CHANGEDBY_ID]
table 2 structure;
[REPORT_DT]
,[AGENT_NBR]
,[TRR_TOTALPIF_CNT]
,[TRR_TOTALPON_CNT]
,[TRR_TOTALREV_CNT]
,[TRR_TOTALERR_CNT]
这是无效的输出
更新 我创建了两个数据集来演示解决方案 数据集1 数据集2 在Tableau中连接两个数据集 我在tableau中构建了一个视图(注意
策略
字段蓝色,因为它已转换为维度)
现在将一个字段计算为
ATTR({FIXED [Agent code]: count([Policy no])}/[Policies])
将此添加到viz会让我
其中显示所需的百分比
注意-由于表具有一对多关系,关系较小一侧的度量值的固定语句也将产生相同的结果。
ATTR({FIXED [Agent code]: count([Policy no])}/
{FIXED [Agent code]: AVG([Policies])})
我已经用两个不同表中的列详细信息更新了我的问题,谢谢!我已经在表结构中添加了,希望这有帮助。您是否希望
58/12
作为输出,即sum(measure1)=58,count of measure2=12??我没有得到这个答案是的,我希望得到58/12作为输出,即sum(measure1)=58和count of measure2=12查看下面建议的答案!希望它能帮助您的回答谢谢,我需要每个代理编号每行的百分比,因此我尝试使用[Measure_1]/{count([measure2])}方法,但百分比值不正确,我在问题中输入了不正确的百分比,那么您是否需要144/1521作为第一个输出,其他输出遵循相同的模式?是的,所以144/1521,然后是下一行102/2820,然后继续为每一行更新计算总和(Measure1)/{固定的[agent]:count([Measure2])如果没有给出正确的结果,它将返回度量值1值请参阅已编辑的解决方案。如果仍然没有帮助,我重申,您可能必须共享几行完整的数据输入(两个数据集)和仅与这些示例行相关的所需输出。这些示例行现在适用于我!我使用了ATTR({FIXED[Agent code]:count([Policy no])}/{FIXED[代理代码]:AVG([Policys])}以获得结果。非常感谢您在这方面的帮助。我是Tableau的新手(您可能会告诉我),所以我仍在寻找我的方法。