我已经编写了一个SQL子查询,我正在try 在Power BI中重新创建它,但它比我想象的要复杂得多,而且我没有获得正确的值.

SQL:好的,好的.

select sum(x.totalbays)
from
(
select distinct day_id, sum(distinct ranged_bays) as totalbays  from overviewTable
group by day_id
) x

Total in SQL:好的,好的. 15,219,683.76

DAX:

TestMeasure = 
  SUMX (
        SUMMARIZE ( 'Overview Table', 'Overview Table'[day_id], "TotalBays", SUM('Overview Table'[ranged_bays])),
        [TotalBays]
    )

Total using DAX: 87,023,857.19

任何帮助都将不胜感激.

推荐答案

我可以建议使用嵌套迭代器来处理子查询中的distinct吗?

TestMeasure =
SUMX (
    SUMMARIZE (
        'Overview Table',
        'Overview Table'[day_id],
        "TotalBays",
            SUMX (
                DISTINCT ( 'Overview Table'[ranged_bays] ),
                'Overview Table'[ranged_bays]
            )
    ),
    [TotalBays]
)

编辑:考虑到一些额外的 idea ,也许更简单:

TestMeasure =
SUMX (
    SUMMARIZE (
        'Overview Table',
        'Overview Table'[day_id],
        'Overview Table'[ranged_bays] 
    ),
    'Overview Table'[ranged_bays]
)

Sql相关问答推荐

提取Snowflake SQL中的嵌套键

基于模式或其他行集的数据复制

基于前面行的值:当x&>2时重复1,当连续3行x=0时则重复0

当一个视图在Postgres中失效时?

雅典娜嵌套Json提取液

查找表中特定值的上次更新日期

按日期时间(不包括秒)连接表

如何设计一个调用嵌套函数并仅在所有被调用的嵌套函数都提交时才提交的事务,例如,如果一个子函数失败则中止?

同一表的Oracle SQL更新(含YTD合计)

如何用HeidiSQL在Firebird中设置超时?

基于开始/结束日期重叠的BigQuery突发行

使用左外部联接更正列中第+1行的值时重复

插入具有预期逻辑的查询以Forking 表

计算 ID 满足条件的次数

将varchar (7)列转换为datetime

如何根据共同列值从两个表中包含列,但只包含左表中的行

MariaDB非常简单的MATCHAGAINST查询不使用FULLTEXT索引吗?

如何通过CROSS APPLY获取多级嵌套JSON属性的值?

根据条件列出不同的值

包含多行的 SQL 查询