sorting - SAS 9.3 和 SAS 9.4 左连接排序顺序
问题描述
我正在开展一个 SAS 迁移项目 - 将代码从 SAS 9.3 迁移到 SAS 9.4(SAS 工作室)。在 SAS 9.3 中,来自 SAS 代码的最终 SAS 数据集用于数据仓库,而在 SAS 9.4 中,数据仓库是 Redshift。我们注意到,当我们没有条件或键来控制整个行值时,左连接(sas 到 sas 数据集,sas 到 redshift 表)在 SAS 9.3 和 SAS 9.4 中具有不同的排序顺序。当我们在左连接后通过 PROC SORT 中的键删除重复项时,它会消除不同的记录,因为左连接在重复键中以不同的顺序隐式地对结果集进行排序。结果,PROC SORT 在 9.3 和 9.4 中选择了不同的记录,我们在最终数据集中看到 9.3 和 9.4 之间的数据不匹配。客户不想在 9 中进行任何更改。3个遗留代码来控制记录顺序。因此,我们尝试在 9.3 和 9.4 的左连接排序顺序中查找模式,看起来它们在重复键中随机排序。有人在您的迁移项目中遇到过这个问题吗?这是意料之中的事情吗,因为我从没想过 9.3 和 9.4 中的左连接工作方式不同?
解决方案
推荐阅读
- javascript - 在反应问题中加载lottie-web动画
- realm - 如何使用 GraphQL 创建/改变一行,其中一个字段是 Realm 中的引用
- ruby-on-rails - Ruby on Rails - best_in_place 的 WYSIWYG 矩阵编辑器
- c++11 - 对命名空间中类内部定义的友元函数模板的未定义引用
- swift - 以与其 region.span 不同的速度更改 MKMapView 中心坐标
- c# - 如何更改为另一个视图控制器(解释清楚)
- python - 当模型中的数据发生变化时如何刷新视图?
- r - 如何仅在正范围内抖动值
- ios - 没有在带有firebase的tableview中显示自定义单元格
- javascript - Google Script - 根据单元格值设置过滤条件