%let rows = "";
%macro test;
proc sql noprint;
select count(ID)
into: sqlRows
from mytbl;
quit;
%do i = 1 %to &sqlRows; * loop from 1 to sqlRows;
proc sql noprint;
select ID
into: ColumnID
from mytbl(firstobs= &i);
quit;
%if &rows eq "" %then %do
%let rows = "<tr><td>&ColumnID</td></tr>";
%end;
%if &rows ne "" %then %do
%let rows = "&rows<tr><td>&ColumnID</td></tr>";
%end;
%end;*End loop;
%mend;
%test;
%put &rows;
Hallo Ich möchte alle Daten der Spalte ID Daten von Mytbl in eine Variable setzen.Überschreiben/Anhängen sas Variable
Ich habe eine Variable namens rows erstellt und ihr einen leeren Wert zugewiesen. Dann benutze ich die Schleife, ich bekomme die Werte nacheinander von mytab und speichere sie in columnID Variable. Wenn die Zeilenvariable leer ist, fügen Sie nur tr und td mit columnID-Daten hinzu. Wenn die Zeilenvariable nicht leer ist, fügen Sie sie an. aber es gibt mir nur die letzte Aufzeichnung meines Tisches.
können sagen mytbl Daten 1,2 hat und 3 in Spalte ID
Zeilen Variable sollte
<tr><td>1</td></tr><tr><td>2</td></tr><tr><td>3</td></tr>
Daten haben, aber es ist nur mir Daten von letzten Reihe als
<tr><td>3</td></tr>
Ich sehe nicht, wo Sie irgendwelche Variablen erstellen. Sie scheinen nur versucht zu haben, Daten in Makrovariablen zu setzen. Es ist wahrscheinlich einfacher, die Daten in tatsächlichen Datensätzen zu behalten. Was planen Sie mit den Daten? Sieht aus wie HTML-Code, planen Sie eine HTML-Datei zu schreiben? – Tom