全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
1747 2
2015-07-25

求教各位,
为什么下面代码中,WHERE p2.&IDVar= p1.&IDVar  这句不能去掉?
p1 p2 p3 是否可以去掉?


proc sql noprint;
        create table &DSout as
                SELECT &IDVar , MIN( &XVar ) AS mode
                FROM (
               SELECT &IDVar,  &XVar
               FROM &Dsin p1
               GROUP BY &IDVar, &XVar
               HAVING COUNT( * ) =
                     (SELECT MAX( CNT )
                      FROM (SELECT COUNT( * ) AS CNT
                            FROM  &Dsin p2
                           WHERE p2.&IDVar= p1.&IDVar
                            GROUP BY p2.&XVar
                            ) AS p3
                      )
              ) AS p
        GROUP BY p.&IDVar

;
quit;


二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2015-7-25 17:24:05
哪位大神可以讲讲这串代码执行的逻辑,晕了
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2015-7-25 20:37:58
写代码没必要写这么复杂,你把语句拆开成几句就很好理解了,这么写不但太复杂,而且容易出错,不好调试。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群