2013-07-25 13 views
8

Pracuję nad SAS w środowisku UNIX env i chcę wyświetlić tylko nazwę kolumny zestawu danych. Próbowałem proców zawartości i proc drukowania, ale oba z nich wymieniają wiele innych nieistotnych informacji, których nie chcę, ponieważ wypełnia mój ekran kit, a informacja ostatecznie zaginęła.Lista tylko nazwy kolumn zestawu danych

Próbowałem również uzyskać te informacje z metadanych sas, ale to też nie działa. Próbowałem:

2? proc sql; 
    select * 
from dictionary.tables 
where libname='test' and memname='sweden_elig_file_jul'; 
quit; 
    5? 
NOTE: No rows were selected. 

    6? 
NOTE: PROCEDURE SQL used (Total process time): 
     real time   0.27 seconds 
     cpu time   0.11 seconds 

Odpowiedz

17

używasz niewłaściwego słownika tabeli, aby uzyskać nazwy kolumn ...

 
proc sql ; 
    select name 
    from dictionary.columns 
    where memname = 'mydata' 
    ; 
quit ; 

lub przy użyciu PROC ZAWARTOŚĆ

 
proc contents data=mydata out=meta (keep=NAME) ; 
run ; 
proc print data=meta ; run ; 
+5

I druga odpowiedź jest Chris J. Ale nie polecałbym metody 'dictionary.columns' - może ona być wielokrotnie wolniejsza niż metoda' proc content', szczególnie jeśli w środowisku SAS znajduje się duża liczba tabel. –

2

Oto jeden Użyłem Zanim uzyskasz listę kolumn z nieco większą ilością informacji, możesz dodać opcję keep tak jak w poprzedniej odpowiedzi. To tylko pokazuje, jak utworzyć połączenie z serwerem metadanych, na wypadek, gdyby było to przydatne dla każdego, kto ogląda ten post.

libname fetchlib meta 
    library="libraryName" metaserver="metaDataServerAddress" 
    password="yourPassword" port=1234 
    repname="yourRepositoryName" user="yourUserName"; 

proc contents data=fetchlib.YouDataSetName 
    memtype=DATA 
    out=outputDataSet 
    nodetails 
    noprint; 
run; 
0
proc sql; 
    select * 
    from dictionary.tables 
    where libname="TEST" and memname="SWEDEN_ELIG_FILE_JUL"; 
quit; 
+1

Witamy w Stack Overflow! Możesz poprawić tę odpowiedź, edytując ją, aby wyjaśnić, jak to działa. – dorukayhan

Powiązane problemy