楼主: alwayssummer
1862 7

[原创博文] 数据关联的问题,急 [推广有奖]

  • 0关注
  • 0粉丝

大专生

63%

还不是VIP/贵宾

-

威望
0
论坛币
2967 个
通用积分
0
学术水平
0 点
热心指数
2 点
信用等级
0 点
经验
507 点
帖子
46
精华
0
在线时间
56 小时
注册时间
2010-1-22
最后登录
2023-5-6

楼主
alwayssummer 发表于 2010-4-16 16:33:55 |AI写论文
30论坛币
有一张数据表,表里面有一列,它的每个相同的值都唯一对应另外一个值,但是这个对应关系在另外一个数据表。怎么在原数据表里增加一列对应值?
举个例子:
有这样一个数据表:
a        b       c
x1      y1    z1
x2      y2    z2
x3      y2    z3
x4      y3    z4

另外一张表:
aa     bb
y1      m
y2      n
y3      p
怎么在第一张表上增加第二列的对应值?
新手,最好能说详细一点。
QQ:1457306423

最佳答案

soporaeternus 查看完整内容

proc sql; create table c as select a.*,b.bb from a a left join b b on a.b=b.aa ; quit;
关键词:对应关系 数据表 最好 数据表

回帖推荐

crackman 发表于6楼  查看完整内容

data a; input a $ b $ c $@; cards; a b c x1 y1 z1 x2 y2 z2 x3 y2 z3 x4 y3 z4 ; run; data b; input aa $ bb $@; cards; y1 m y2 n y3 p ; run; proc sql; create table result as select a.*,b.bb from a inner join b on a.b=b.aa; quit;

本帖被以下文库推荐

沙发
soporaeternus 发表于 2010-4-16 16:33:56
proc sql;
create table c as
select a.*,b.bb
from a a left join b b
on a.b=b.aa
;
quit;
Let them be hard, but never unjust

藤椅
retrospect 发表于 2010-4-16 16:37:22
没理解你的表述

板凳
alwayssummer 发表于 2010-4-16 16:48:37
就是在第一张表上增加一列,这一列数跟第一张表的第二列数是一一对应的。
只不过这种对应关系在另外一张表上。怎么移植过来。

报纸
alwayssummer 发表于 2010-4-16 16:54:53
就是数据量太大,手工添加不可能,希望能批量处理。

地板
crackman 发表于 2010-4-16 17:01:40
data a;
input a $ b $ c $@;
cards;
a        b       c
x1      y1    z1
x2      y2    z2
x3      y2    z3
x4      y3    z4
;
run;
data b;
input aa $ bb $@;
cards;
y1      m
y2      n
y3      p
;
run;
proc sql;
create table result as select a.*,b.bb from a inner join b on a.b=b.aa;
quit;
已有 2 人评分经验 论坛币 学术水平 热心指数 信用等级 收起 理由
bakoll + 3 + 3 精彩帖子
alwayssummer + 1 + 1 + 1 版主不好意思,先来后到,论坛币就不给你了。还是要谢谢你。

总评分: 经验 + 3  论坛币 + 3  学术水平 + 1  热心指数 + 1  信用等级 + 1   查看全部评分

7
醉_清风 发表于 2010-4-16 17:05:27
保险的话 应该是left join 吧
从来不需要想起 永远也不会忘记

8
crackman 发表于 2010-4-16 17:13:21
是的
应该用left join

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

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