SAS编程技术SQL从单个表中检索数据.ppt

  1. 1、本文档共77页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
SAS编程技术SQL从单个表中检索数据

第20章 SQL从单个表中检索数据 SELECT语句综述 SELECT语句是PROC SQL的主要工具。使用SELECT语句可以识别、检索和操作表中的数据,使用SELECT子句可以设定查询条件。 SELECT语句格式 SELECT DISTINCT object-item , ...object-item INTO macro-variable-specification , ... macro-variable-specification 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 子句 语句格式 SELECT DISTINCT object-item , ...object-item FROM from-list 选择所有列 语句格式: COLUMN-NAME= * (asterisk) select * from from-list SELECT子句中,“*”号表示选择表中的所有列。 选择特定列 语句格式: Select column-name from from-list 用DISTINCT语句剔除查询结果中重复观测 语句格式: Keywords=distinct 创建说明列 语句格式:SELECT ‘TEXT’, COLUMN-NAME 计算新列值 语句格式:Calculating Values =Calculating Expression of columns 为列分配别名 语句格式:SELECT calculation-form as column name 别名必须符合SAS名称要求,别名只在当前的查询中有效。 CALCULATED 语句 语句格式:Calculated Column-name 使用别名引用一个计算过的列值时,必须使用Calculated 关键词,并将Calculated放在列名称之前,以此告知PROC SQL这个列是经计算得到的。 CASE表达式 语句格式: CASE case-operand WHEN when-condition THEN result-expression ...WHEN when-condition THEN result-expression ELSE result-expression END 使用ORDER BY语句排序 语句格式 ORDER BY order-by-item ASC|DESC, ... order-by-item ASC|DESC; 用WHERE语句选择观测 语句格式 WHERE sql-expression 选项说明: sql-expression (见sql-expression定义). 使用BETWEEN-AND 算符 例20.16 使用BETWEEN-AND算符选择满足一定范围的观测。 proc sql; create table stkinfo1991 as select * from resdat.lstkinfo where lstdt between 1jan1991d and 31dec1991d; quit; 使用LIKE算符 使用汇总函数汇总数据 使用汇总函数(aggregate function or summary function)可以产生数据的统计量。 用WHERE子句汇总数据 使用SUM函数 观测数汇总 使用GROUP BY子句进行分组汇总 语句格式 GROUP BY group-by-item , ... group-by-item 用HAVING子句选择分组数据 语句格式 HAVING sql-expression 例20.25 算出A股市场股票2005年的交易天数。 proc sql; select stkcd,count(*)as trday from resdat.dret where 1jan2005d=date=31dec2005d group by stkcd having substr(stkcd,1,1) in (0,6) or substr(stkcd,1,2)=99; quit; 股票代码|Sto ck Code trday ----------------------------------- 000002 212 000007 241

文档评论(0)

zhuliyan1314 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档