BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.
jffeudo86
Quartz | Level 8

Hi,

 

How can I use a WITH statement in SAS, or is it possible?  Code below returns "Statement is not valid or it is used out of proper order." highlighting the "WITH" .  What do I need to do if it's possible?  Or is it just an Oracle statement?

 

WITH test
AS (SELECT * FROM xx (OBS=10))
SELECT test.*;

 

 

Thanks!

1 ACCEPTED SOLUTION
5 REPLIES 5
tsap
Pyrite | Level 9

That logic will not work as it is written currently when attempted in SAS.

 

The logic in SAS will need to look like this:

PROC SQL;
CREATE TABLE Test AS
	(SELECT * from InsertTableName (obs=10));
QUIT;

Hope this helps.

jffeudo86
Quartz | Level 8
Thank you for your reply @tsap. I'm interested in using "WITH", not creating a table.
tsap
Pyrite | Level 9

I guess my question is the function of the 'WITH' that you are interested in using. If your intention is printing the 10 observations from that table and not creating a table, then you would make a small modification to the SQL logic I supplied earlier.

PROC SQL;
	(SELECT * from InsertTableName (obs=10));
QUIT;

This will not create a table. It will just print the details from 10 observations on the table specified.

jffeudo86
Quartz | Level 8
Sorry if my question was not clear. A solution has been accepted and a link was posted.

Thank you!

hackathon24-white-horiz.png

The 2025 SAS Hackathon has begun!

It's finally time to hack! Remember to visit the SAS Hacker's Hub regularly for news and updates.

Latest Updates

Creating Custom Steps in SAS Studio

Check out this tutorial series to learn how to build your own steps in SAS Studio.

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
  • 5 replies
  • 1434 views
  • 0 likes
  • 2 in conversation