SAS学习经验总结分享:篇四—SQL过程

SQL过程

SQL过程是实现对数据集或关系数据库的表进行操作的过程,对数据集或关系数据库的表进行查询、修改、创建表、删除数据、插入数据和更新数据等功能。提现了SAS对大型数据库管理系统通用的SQL语言支持。

(本文为原创,禁止复制或转载,转载务必标明出处:http://www.cnblogs.com/smallcrystal/p/4845164.html )

  • SQL过程语法

    Proc sql <选项>;

    数据操纵语句;

    quit;

  • 数据操纵语句:是实现对数据集或关系数据库的表进行操作的过程,对数据集或关系数据库的表进行查询、修改、创建表、删除数据、插入数据和更新数据等功能。

        1、创建表语句

    (1)基本语句创建表:根据数据属性定义表明、列名及列属性

create table 表名 (列名1 属性,列名2 属性,列名3 属性);

属性如 char、character、date、dec、decimal、float、int、num、numeric、real、smallint、varchar

    (2)查询语句创建表:实际是复制查询语句指定列的列名和对应列的数据到新表中,相当于数据集的复制。

create table 表名 as select 列名1,列名2,列名n from 表名 <查询条件>;

    (3)LIKE语句创建新表结构:只创建表结构,不复制数据。

create table 表名 like 已存在表名;

        2、创建索引语句

    (1)创建简单索引:只对表中的一个列创建索引,此索引的索引名必须与列名相同。

create <unique> index 索引名 on 表名 (列名);索引名需与列名一致

    (2)建立复合索引:只对表中的多个列建立索引

create index 索引名 on 表名 (column1,column2,)

        3、select查询语句:实现对数据集或关系数据库中的表进行数据查询

    (1)单表查询:

select <*>|<指定列名> from 表名|视图名 <查询条件>;

查询条件:①where语句 列名(=/eq ^=/ne >/gt </lt >=/ge <=le  and or not )

              ②group by语句: group by 列名1 列名2;

              ③having语句:用在group by 语句后面实现对分组数据按条件过滤,相当于where。

              ④order by语句:按指定列降序或升序排序,order by 列名1,列名2< desc>;

版权声明: 本文为博主原创文章,转载必须标明出处:http://www.cnblogs.com/smallcrystal/ 作者:水晶球
原文地址:https://www.cnblogs.com/smallcrystal/p/4845164.html