BookmarkSubscribeRSS Feed
Mike_Davis
Fluorite | Level 6


Hello everyone,

How to use proc sql to create a dataset in the new dataset I just want select all but one variables from old dataset?

In this example,I don't want variable s0377 list in the select statement.  Also I don't want to use drop statement as :...create table one(drop=s0377) ...or.... from sashelp.Yr1001(drop=s0377).....

Thanks

Proc sql noprint;

create table one as

select *

from sashelp.Yr1001

;

quit;

2 REPLIES 2
Haikuo
Onyx | Level 15

well, if not using drop, then try this:

proc sql;

select name into :name from dictionary.columns separated by ',' where libname='WORK' and MEMNAME='ONE' AND  name ne 'S0377'; quit;

Proc sql noprint;

create table one as

select &name

from sashelp.Yr1001

;

quit;

Haikuo

FloydNevseta
Pyrite | Level 9

Another option:

Proc sql noprint;

create table one as

select *

from sashelp.Yr1001

;

alter table one

drop s0377

;

quit;

But why don't you want to use the DROP= option? Generally, it's less coding and more efficient.

hackathon24-white-horiz.png

2025 SAS Hackathon: There is still time!

Good news: We've extended SAS Hackathon registration until Sept. 12, so you still have time to be part of our biggest event yet – our five-year anniversary!

Register Now

What is Bayesian Analysis?

Learn the difference between classical and Bayesian statistical approaches and see a few PROC examples to perform Bayesian analysis in this video.

Find more tutorials on the SAS Users YouTube channel.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 2 replies
  • 1238 views
  • 6 likes
  • 3 in conversation