I need to create a Data Step View for an existing dataset. This view should not be require that one assign the physical path of the existing dataset to a specific Libref.
I need Data Step equivalent of following PROC SQL View:
Libname ViewOut "<physical path of view output library>" disp=shr;
PROC SQL
CREATE VIEW ViewOut.DataSetName as
SELECT * FROM XYZ123.DataSetName
USING LIBNAME XYZ123 "<physical path of existing output dataset>"
DISP=SHR WAIT=999;
QUIT;
In the above PROC SQL View, the physical path of the dataset is included within the view, so, if the one has access to the view, he/she does not need to know where the actual dataset is.
Thanks in anticipation!
A data step view is compiled before being stored as a .sas7bvew file, so it can't be dynamic after that, with the exception of changing the physical path for a libname. So what you want to do is not possible.
SQL views, OTOH, are stored as program code and executed with proc sql at runtime.
I don't believe that is possible as such in SAS, they only implement ANSI SQL. What is it your trying to do, from that code you just create a view of a dataset, which is database thinking. SAS references data with libnames, so effectively the same code would be:
libname dataloc "<physical_path>";
I.e. point the library reference to where the data is. That is all you need. If you need further complicated views then you need the libref and the code.
A data step view is compiled before being stored as a .sas7bvew file, so it can't be dynamic after that, with the exception of changing the physical path for a libname. So what you want to do is not possible.
SQL views, OTOH, are stored as program code and executed with proc sql at runtime.
Don't miss out on SAS Innovate - Register now for the FREE Livestream!
Can't make it to Vegas? No problem! Watch our general sessions LIVE or on-demand starting April 17th. Hear from SAS execs, best-selling author Adam Grant, Hot Ones host Sean Evans, top tech journalist Kara Swisher, AI expert Cassie Kozyrkov, and the mind-blowing dance crew iLuminate! Plus, get access to over 20 breakout sessions.
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.