BookmarkSubscribeRSS Feed
cckesler
Calcite | Level 5

A view was created with the following definition (pulled from the describe view output)

 

select *

from TMPLIBPT.DREAM

using libname tmplibpt "/hardpath/datasets/hideit" access = readonly filelocks = none;

 

When I try to access it like below, it works. 

libname mylib '/hardpath/datasets';

proc sql;

create table check3 as select checkfld from mylib.dream

where checkfld = "xxxx";

quit;

 

When I add the distinct keyword I get an error saying the libname isn't assigned, but the step is still run.  Trying to figure out why.  I am pretty new to working with views.  Can someone help me understand this?

libname mylib '/hardpath/datasets';

proc sql;

create table check3 as select distinct checkfld from mylib.dream

where checkfld = "xxxx";

quit;

 

ERROR: Libref TMPLIBPT is not assigned.

INFO: Index checkfld of SQL table TMPLIBPT.DREAM selected for SQL SELECT DISTINCT/UNIQUE optimization.

NOTE: Compression was disabled for data set WORK.CHECK3 because compression overhead would increase the size of the data set.

NOTE: Table WORK.CHECK3 created, with 1 rows and 1 columns.

3 REPLIES 3
PaigeMiller
Diamond | Level 26

Can you please show us the actual LOG instead of this copy-and-paste portions of the log, beginning with the entire PROC SQL part of the log where you have "select * from TMPLIBPT.DREAM"?

 

Please click on the {i} icon and paste your log into the window that appears. DO NOT SKIP THIS STEP.

--
Paige Miller
cckesler
Calcite | Level 5
libname mylib '/aas/hardpath/datasets';

data check1;
     set mylib.dream;
     where checkfld = "xxxx";
run;

proc sql;
     create table check2 as select checkfld from mylib.dream
     where checkfld = "xxxx";
quit;

proc sql;
     create table check3 as select distinct checkfld from mylib.dream
     where checkfld = "xxxx";
quit;

proc sql;
describe view mylib.dream;
quit;
cckesler
Calcite | Level 5
25         GOPTIONS ACCESSIBLE;
26         libname mylib '/aas/hardpath/datasets';
NOTE: Libref MYLIB was successfully assigned as follows: 
      Engine:        V9 
      Physical Name: /aas/hardpath/datasets
27         
28         /*proc sql;*/
29         /*create view mylib.dream as*/
30         /*   select * from TMPLIBPT.DREAM using libname tmplibpt '/aas/hardpath/datasets/hideit' access = readonly filelocks =
30       ! none;*/
31         /*quit;*/
32         
33         data check1;
34              set mylib.dream;
35              where checkfld = "xxxx";
36         run;

1                                                          The SAS System                         10:55 Wednesday, February 27, 2019

INFO: Index checkfld selected for WHERE clause optimization.
NOTE: There were 102084 observations read from the data set TMPLIBPT.DREAM.
      WHERE checkfld='xxxx';
NOTE: There were 102084 observations read from the data set MYLIB.DREAM.
      WHERE checkfld='xxxx';
NOTE: The data set WORK.CHECK1 has 102084 observations and 11 variables.
NOTE: Compressing data set WORK.CHECK1 increased size by 12.87 percent. 
      Compressed is 114 pages; un-compressed would require 101 pages.
NOTE: DATA statement used (Total process time):
      real time           0.10 seconds
      user cpu time       0.10 seconds
      system cpu time     0.01 seconds
      memory              6003.15k
      OS Memory           28328.00k
      Timestamp           02/27/2019 11:55:08 AM
      Step Count                        15  Switch Count  33
      Page Faults                       0
      Page Reclaims                     227
      Page Swaps                        0
2                                                          The SAS System                         10:55 Wednesday, February 27, 2019

      Voluntary Context Switches        98
      Involuntary Context Switches      1
      Block Input Operations            0
      Block Output Operations           14648
      

37         
38         proc sql;
39              create table check2 as select checkfld from mylib.dream
40              where checkfld = "xxxx";
NOTE: Compression was disabled for data set WORK.CHECK2 because compression overhead would increase the size of the data set.
1                                                          The SAS System                         10:55 Wednesday, February 27, 2019

INFO: Index checkfld selected for WHERE clause optimization.
NOTE: Table WORK.CHECK2 created, with 102084 rows and 1 columns.

41         quit;
NOTE: PROCEDURE SQL used (Total process time):
      real time           0.03 seconds
      user cpu time       0.03 seconds
      system cpu time     0.00 seconds
      memory              5681.03k
      OS Memory           28584.00k
      Timestamp           02/27/2019 11:55:08 AM
      Step Count                        16  Switch Count  3
      Page Faults                       0
      Page Reclaims                     49
      Page Swaps                        0
      Voluntary Context Switches        18
      Involuntary Context Switches      0
      Block Input Operations            0
      Block Output Operations           1336
      

42         
43         proc sql;
44              create table check3 as select distinct checkfld from mylib.dream
45              where checkfld = "xxxx";
ERROR: Libref TMPLIBPT is not assigned.
INFO: Index checkfld of SQL table TMPLIBPT.DREAM selected for SQL SELECT DISTINCT/UNIQUE optimization.
NOTE: Compression was disabled for data set WORK.CHECK3 because compression overhead would increase the size of the data set.
NOTE: Table WORK.CHECK3 created, with 1 rows and 1 columns.

46         quit;
NOTE: PROCEDURE SQL used (Total process time):
      real time           0.01 seconds
      user cpu time       0.01 seconds
      system cpu time     0.01 seconds
      memory              5681.03k
      OS Memory           28584.00k
      Timestamp           02/27/2019 11:55:08 AM
      Step Count                        17  Switch Count  2
      Page Faults                       0
      Page Reclaims                     26
      Page Swaps                        0
      Voluntary Context Switches        20
      Involuntary Context Switches      0
      Block Input Operations            0
      Block Output Operations           184
      

3                                                          The SAS System                         10:55 Wednesday, February 27, 2019

47         
48         proc sql;
49         describe view mylib.dream;
NOTE: SQL view MYLIB.DREAM is defined as:

        select *
          from TMPLIBPT.DREAM
         using libname tmplibpt '/aas/hardpath/datasets/hideit' access = readonly filelocks = none;

50         quit;
NOTE: PROCEDURE SQL used (Total process time):
      real time           0.00 seconds
      user cpu time       0.00 seconds
      system cpu time     0.00 seconds
      memory              406.71k
      OS Memory           23460.00k
      Timestamp           02/27/2019 11:55:08 AM
      Step Count                        18  Switch Count  0
      Page Faults                       0
      Page Reclaims                     16
      Page Swaps                        0
      Voluntary Context Switches        3
      Involuntary Context Switches      0
      Block Input Operations            0
      Block Output Operations           48
      

SAS Innovate 2025: Save the Date

 SAS Innovate 2025 is scheduled for May 6-9 in Orlando, FL. Sign up to be first to learn about the agenda and registration!

Save the date!

How to Concatenate Values

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.

SAS Training: Just a Click Away

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

Browse our catalog!

Discussion stats
  • 3 replies
  • 779 views
  • 2 likes
  • 2 in conversation