楼主: 再见~流年
1567 3

为什么两个表合并有一列数据全部丢失 [推广有奖]

  • 0关注
  • 0粉丝

初中生

80%

还不是VIP/贵宾

-

威望
0
论坛币
0 个
通用积分
0
学术水平
0 点
热心指数
2 点
信用等级
0 点
经验
75 点
帖子
9
精华
0
在线时间
20 小时
注册时间
2014-2-4
最后登录
2018-2-4

楼主
再见~流年 发表于 2014-2-11 21:44:21 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
***把ret和top1合并为一个新表temp1***;
proc sql;
  create table dest.temp1
  as select a.* ,b.ret
  from dest.top1 as a left join dest.ret as b
  on a.Stkcd=b.Stkcd
  and a.Trdynt=b.Trdynt
  ;
  quit;
代码
下面是三张表
QQ截图20070102214105.png QQ截图20070102214132.png QQ截图20070102214119.png


二维码

扫码加我 拉你入群

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

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

关键词:数据全 left join proc sql Select Create

回帖推荐

heperwong 发表于2楼  查看完整内容

你的第二张表ret中的变量trdynt前面有空白,应该没有join上,你应该strip一下。 proc sql; create table dest.temp1 as select a.* ,b.ret from dest.top1 as a left join dest.ret as b on strip(a.Stkcd)=strip(b.Stkcd) and strip(a.Trdynt)=strip(b.Trdynt) ; quit;

沙发
heperwong 在职认证  发表于 2014-2-11 22:18:17
你的第二张表ret中的变量trdynt前面有空白,应该没有join上,你应该strip一下。
proc sql;
  create table dest.temp1
  as select a.* ,b.ret
  from dest.top1 as a left join dest.ret as b
  on strip(a.Stkcd)=strip(b.Stkcd)
  and strip(a.Trdynt)=strip(b.Trdynt)
  ;
  quit;

藤椅
再见~流年 发表于 2014-2-11 22:25:12
heperwong 发表于 2014-2-11 22:18
你的第二张表ret中的变量trdynt前面有空白,应该没有join上,你应该strip一下。
proc sql;
  create tabl ...
非常非常感谢 真的是这样 太给力啦

板凳
linusx 发表于 2014-2-12 08:08:46
学习了

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

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