DATA Step, Macro, Functions and more

How can I get what I want

Accepted Solution Solved
Reply
Occasional Contributor
Posts: 10
Accepted Solution

How can I get what I want

Thank you for your help!

Mem_Detail

Parent Child

A B

B C

C D

if you see this dataset mem_detail, A is parent and B is child and in next observation B is parent and C is child so automatically A is grand parent and C is grand child. I want a dataset like Following:

G.Parent G.child

A C

B D



Accepted Solutions
Solution
‎05-26-2013 03:41 PM
Respected Advisor
Posts: 4,640

Re: How can I get what I want

Typical problem solved by self-join :

data have;

length parent child $1;

input Parent Child;

datalines;

A B

B C

C D

;

proc sql;

create table want as

select

     P.Parent as Gparent,

     C.child as Gchild

from

     have as P inner join

     have as C on P.child=C.parent;

select * from want;

quit;

PG

PG

View solution in original post


All Replies
Solution
‎05-26-2013 03:41 PM
Respected Advisor
Posts: 4,640

Re: How can I get what I want

Typical problem solved by self-join :

data have;

length parent child $1;

input Parent Child;

datalines;

A B

B C

C D

;

proc sql;

create table want as

select

     P.Parent as Gparent,

     C.child as Gchild

from

     have as P inner join

     have as C on P.child=C.parent;

select * from want;

quit;

PG

PG
Occasional Contributor
Posts: 10

Re: How can I get what I want

Thanks! I will try it! PG

☑ This topic is SOLVED.

Need further help from the community? Please ask a new question.

Discussion stats
  • 2 replies
  • 216 views
  • 2 likes
  • 2 in conversation