我正在尝试将.DAT文件读入SQL。代理商数据提供商在此处提供了SAS中的读入代码(https://www.health.ny.gov/statistics/sparcs/docs/ip_v2.sas)。我想将这些数据读入一个安全的SQL数据库,并想知道是否有人可以帮助我将这个SAS代码翻译成SQL?这是一个开始:
OPTIONS NOCENTER NODATE FORMDLIM=' ' compress=yes pagesize=50;
%let yr=11;
/**** READ IN FILE ******* No Check for HexDec ****/
data IUM;
infile eium truncover lrecl=2500 PAD ignoredoseof /*obs=10000*/ ;
INPUT
@0016 ordr $char3.
@0001 RECDTL $char2500.
;
进一步说明它是指定列的位置和长度,而不是数据类型。那里的SAS用户感觉聪明慷慨吗?
答案 0 :(得分:-1)
有什么要翻译的? @xxxx
表示要从哪个列开始,然后您有变量名称和用于读取它的信息。 SAS只有两种数据类型,固定长度字符串和浮点数。任何以$
开头的信息都会生成一个字符变量。其他人会产生一个数字。一些明显的信息将生成可以解释为日期,时间或日期时间(时间戳)值的数字。例如date9.
,time8.
或datetime20.
。还有其他以文本格式表示日期的方式的信息,例如YYMMDD.
,MMDDYY.
或DDMMYY.
。
SAS将根据您在代码中首次引用变量的时间来定义数据集中变量的顺序。因此,ORDR将在RECDTL之前在数据库中定义,即使后者首先出现在文本文件中(第1列与第16列)。