sas中的sql过程可以整理数据,数据合并,以及数据的选取功能等。
sql过程可以拼接两个数据集,创建表格,删除表格中的行和列,以及进行简单的计算各个变量值。
例如:
proc sql;
create view work.body as //从ad表格中选取变量id,de,age,sex,并增加一个变量height并创建一个新表格body
select id, de ,age,sex,id**2\age as height //
from work.ad //这里也可以进行两个表格的合并,from后加两个表格
where sex=‘Male‘ id>20; //在从表格变量sex中挑选出male 和id>20的数据
order by id; //对id进行排序
proc print data=body; //打印数据body 取名为body
title ‘body‘;
run;
即body是新创建的表格
1.2 SQL过程步的特征
SQL过程步并不需要对每一个查询进行重复、每条语句都是单独处理、不需要print过程步就能打印出查询结果、也不用sort过程步进行排序、不需要run、要quit来结束SQL过程步
1.3 SQL过程步语句
SELECT:查询数据表中的数据
ALTER:增加、删除或修改数据表的列
CREATE:创建一个数据表
DELETE:删除数据表中的列
DESCRIBE:列出数据表的属性
DROP:删除数据表、视图或索引
INSERT:对数据表插入数据
RESET:没用过,不知道什么意思
SELECT:选择列进行打印
UPDATE:对已存在的数据集的列的值进行修改
2 SQL基本查询功能
2.1 SELECT语句基本语法介绍
SELECT <DISTINCT> object-item <, ...object-item>
FROM from-list
<WHERE sql-expression>
<GROUP BY group-by-item <, ... group-by-item>>
<HAVING sql-expression>
<ORDER BY order-by-item <, ... order-by-item>>;
这里SELECT:指定被选择的列
FROM:指定被查询的表名
WHERE:子数据集的条件
GROUP BY:将数据集通过group进行分类
HAVING:根据GROUP BY的变量得到数据子集
ORDER BY:对数据集进行排序