楼主: Sunjie650
14056 4

SQL语句中的LEFT JOIN语句在大量数据情况下,运行速度慢,如何优化? [推广有奖]

  • 0关注
  • 0粉丝

高中生

22%

还不是VIP/贵宾

-

威望
0
论坛币
8 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
206 点
帖子
9
精华
0
在线时间
24 小时
注册时间
2016-4-21
最后登录
2022-4-13

楼主
Sunjie650 发表于 2016-9-7 10:17:55 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
SQL语句中的LEFT JOIN语句在大量数据情况下,运行速度很慢,跑一个程序要花2-3个小时,请问如何优化?
如对相关的列建立索引,但是还是很慢。
是否可以用DATA步替代?求助高手;
二维码

扫码加我 拉你入群

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

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

关键词:left join sql语句 left join sql 如何

沙发
linshuhe123 发表于 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高 但是没有对比过

藤椅
420948492 发表于 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:}

板凳
prince315 在职认证  发表于 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,目测会快些,如有必要可以学习使用

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

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-30 01:57