[已解决] 关于PQ导入数据的排序问题

  [复制链接]
查看189544 | 回复158 | 2021-2-18 20:24:33 | 显示全部楼层 |阅读模式
通过PQ将数据以表的形式导入Excel中。

如图所示,发现PQ中日期字段的排序和导出后的完全不同。

有没有可能,所见即所得呢?

还请大佬指教。

谢谢。 10893111556161.png
10893111556166.zip (42.6 KB, 下载次数: 0)
回复

使用道具 举报

zologist | 2021-2-18 20:33:33 | 显示全部楼层
外套Table.Buffer即可
回复

使用道具 举报

mychu | 2021-2-18 20:37:33 | 显示全部楼层
外套Table.Buffer即可


感谢大侠指点。

如图所示,使用Table.Buffer后,日期字段的排序竟然发生了变化。

1、为何会发生变化呢?
2、有没有可能不发生变化呢?

谢谢。
10893111556162.png 10893111556163.png
回复

使用道具 举报

lzswzbs | 2021-2-18 20:40:34 | 显示全部楼层
感谢大侠指点。

如图所示,使用Table.Buffer后,日期字段的排序竟然发生了变化。


原理我搞不懂只是从大佬们那儿学到的解决方法。
回复

使用道具 举报

蓝精灵 | 2021-2-18 20:45:34 | 显示全部楼层
原理我搞不懂只是从大佬们那儿学到的解决方法。


被小龙哥称之为大佬的,那得是多高的修为

我先前对这个默认排序有过类似的疑问,gogole了一阵,也没找到太明确的解释,目前为止了解到的仅限于:
因为DAX是运行于VertiPaq引擎上的,这是一种典型in-memory columnar data engine,数据以列的方式存储和调用,每一条记录的顺序并不是我们在data model里看到的表那样;或者说,数据间没有“上/下一行”的概念,这也正好对应了在DAX里没有那个让人又爱又恨的(EXCEL里)OFFSET函数。
回复

使用道具 举报

苏敏 | 2021-2-18 20:52:34 | 显示全部楼层
被小龙哥称之为大佬的,那得是多高的修为

我先前对这个默认排序有过类似的疑问,gogole了一阵, ...


我只是方法的搬运工,技术原理不懂,谢谢大佬解惑,又学到了今天没花了,回头补上
回复

使用道具 举报

门铃咚咚 | 2021-2-18 20:57:34 | 显示全部楼层
我只是方法的搬运工,技术原理不懂,谢谢大佬解惑,又学到了今天没花了,回头补上


关于排序,我又想到另一个问题,也提出来防止大家一样掉坑里。

有一个很常见的场景:
月份列如果用JAN/FEB/MAR等表示时,在VIZ里默认的排序方式往往是首字母顺序,这时候我们常常借助一个1/2/3的数字列(辅助列)进行排序,VIZ里月份的顺序是舒爽了;随即,坑也来了!!!这个时候,所有涉及月份列的上下文中,辅助列同时存在,在DAX的估值上下文中共同起作用!也就是说,度量值 measure = calculate( xxx, ALL('表'[英文月份])的筛选可以被移除,但'表'[数字月份]依然躲在暗处偷笑
回复

使用道具 举报

胖嘟嘟 | 2021-2-18 21:00:35 | 显示全部楼层
关于排序,我又想到另一个问题,也提出来防止大家一样掉坑里。

有一个很常见的场景:


感谢指点。

又测了下,如果销售人员和日期字段都排序,倒也能返回所见即所得。 10893111556164.png 10893111556165.png
回复

使用道具 举报

老游子 | 2021-8-28 22:44:33 来自手机 | 显示全部楼层
顶顶更健康
回复

使用道具 举报

红胡子 | 2021-9-13 20:30:20 | 显示全部楼层
有空一起交流一下
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则