全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
13992 4
2016-09-07
SQL语句中的LEFT JOIN语句在大量数据情况下,运行速度很慢,跑一个程序要花2-3个小时,请问如何优化?
如对相关的列建立索引,但是还是很慢。
是否可以用DATA步替代?求助高手;
二维码

扫码加我 拉你入群

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

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

全部回复
2016-9-7 11:56:07
data a;
merge  a1(in=a1_1)  a2(in=a2_2) ;
if a1_1;
run;
这个是  用data步实现 left join 的程序   效率据说是 比 sql高 但是没有对比过
二维码

扫码加我 拉你入群

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

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

2016-9-8 10:36:58
linshuhe123 发表于 2016-9-7 11:56
data a;
merge  a1(in=a1_1)  a2(in=a2_2) ;
if a1_1;
{:3_42:}
二维码

扫码加我 拉你入群

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

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

2016-9-8 15:48:07
linshuhe123 发表于 2016-9-7 11:56
data a;
merge  a1(in=a1_1)  a2(in=a2_2) ;
if a1_1;
merge没有by,经常是有问题的。加上by,就需要排序,数据过大,实际使用时间未必会少。
data步的话已知可以使用hash的方法来做match,目测会快些,如有必要可以学习使用
二维码

扫码加我 拉你入群

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

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

2016-9-9 18:13:31
prince315 发表于 2016-9-8 15:48
merge没有by,经常是有问题的。加上by,就需要排序,数据过大,实际使用时间未必会少。
data步的话已知可 ...
忘了写  by了, 请大神赐予一些代码 我学习
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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