Hi, quick and dirty for this particular case: DATA input;
length name $1 place $4 qty1 qty2 qty3 3;
input name place qty1 qty2 qty3;
datalines;
A USA1 1 2 3
A USA1 1 2 3
A USA1 1 2 3
A USA1 1 2 3
A USA1 1 2 3
B USA1 1 2 3
B USA1 1 2 3
B USA1 1 2 3
B USA1 1 2 3
B USA1 1 2 3
B USA1 1 2 3
B USA1 1 2 3
;
RUN;
PROC SORT data=input; by name place;RUN;
DATA input;
length order 8;
set input;
retain order;
by name place;
if first.name then order=0;
order+1;
RUN;
PROC SQL; CREATE TABLE OUTPUT AS
SELECT a.name,
a.place,
a.qty1,
a.qty2,
a.qty3,
b.name AS nameb,
b.place AS placeb,
b.qty1 AS qty1b,
b.qty2 AS qty2b,
b.qty3 AS qty3b
FROM input(WHERE=(name eq 'A')) a
FULL OUTER JOIN input(WHERE=(name eq 'B')) b
ON a.order eq b.order
AND a.place eq b.place
;
QUIT;
... View more