Hi,
I was wondering if it is possible to create a table based upon an other table and add an index immediatly?
basic Table_test
Naam | Key | Blabla | Boemboem |
Jos | 125634 | Dq | Sddsf |
Jos | 125634 | Cxc | Ffdfd |
Maie | 159631 | Dsdjk | Jkhjk |
Marius | 178963 | Sdsd | Ssds |
Aline | 345678 | Dsdsdsdi | Ioyoyo |
Aline | 345678 | Sdsds | Sdsdsd |
Marc | 456789 | Szaéz | Azaz |
Marc | 456789 | Sdsi | uuii |
Result I would like to have.
Table_result
Id | Key |
1 | 125634 |
2 | 159631 |
3 | 178963 |
4 | 345678 |
5 | 456789 |
PROC SQL;
CREATE TABLE Table_result AS
SELECT DISTINCT t1.Key
FROM Table_test t1;
QUIT;
data want (keep=id key);
retain id;
set have;
by key;
if first.key then id+1;
if first.key;
run;
Hello,
Just add within the proc sql the create index line:
PROC SQL;
CREATE TABLE Table_result AS
SELECT DISTINCT t1.Key
FROM Table_test t1;
create index key on Table_result;
QUIT;
If I add the create index key I get this result
Table_result
Key |
125634 |
159631 |
178963 |
345678 |
456789 |
data want (keep=id key);
retain id;
set have;
by key;
if first.key then id+1;
if first.key;
run;
Thanks
It's finally time to hack! Remember to visit the SAS Hacker's Hub regularly for news and updates.
Learn how use the CAT functions in SAS to join values from multiple variables into a single value.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.