SAS 中的 nodupkey 和 SELECT * 与 SQL 中的 table_name 不同之间的区别



我有一个数据集,其中包含 2 个存储字符串的字段。 1.In SAS 当我对数据集执行 nodupkey 时,我会得到 ~200 条记录。 2.In SQL,当我执行选择不同/分组依据/分区时,我得到了~2000条记录。此 SQL 代码在托管在 AWS EMR 服务器上的 HIVE 上运行。

我正在处理的数据集在字段的某些记录中具有 NULL。除了我在第1点和第2点中提到的内容外,我没有做任何其他事情。

我正在寻找解释为什么当我只进行简单的重复删除时,这两者之间存在巨大的不匹配。

Distinct 对 select 语句中的所有字段进行操作,数据库可能会将空值和空格视为不同。 SAS 不会将空值和空白视为不同的值,而仅根据 BY 语句中列出的变量进行筛选。

最新更新