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:對數據集進行排序