Hi all,
I have the below, but SAS log file is stating an error exists with my index statement. Is this the best way of adding an index to create table statement? Should I have the index statement in a different location?
PROC SQL;
CREATE TABLE TEST AS
SELECT * FROM
CONNECTION TO ORACLE(
SELECT STATE, SALES
FROM SALES
WHERE STATE IN ('IL','OH');
create unique index indx1 on sales(state);
DISCONNECT FROM ORACLE;
QUIT;
You are defining an index on an external (rdbms oracle) table . Normally a DBA's type of work.
The SQL pass through code can be checked using the sastrace option.
Creating an index with unique is telling there should be no duplicates. I expect duplicated on state. This it the error you are getting.
....
From the documentation:
index-name names the index that you are creating. If you are creating an index on one column only, then index-name must be the same as column.
Looks like the index name has to be STATE not INDX1
Same thing. Getting the following error on index, although the query runs correctly.
ERROR: Duplicate values not allowed on index state
You are defining an index on an external (rdbms oracle) table . Normally a DBA's type of work.
The SQL pass through code can be checked using the sastrace option.
Creating an index with unique is telling there should be no duplicates. I expect duplicated on state. This it the error you are getting.
....
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 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.