SAP ABAP程序设计基础教程第7章ABAP数据库操作.ppt

SAP ABAP程序设计基础教程第7章ABAP数据库操作.ppt

  1. 1、本文档共27页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第7章ABAP数据库操作 SAP Open SQL基础 ABAP数据库查询程序的结构与查询机制 Open SQL中的主要类型 从数据库表中读取数据 SELECT语句的用法 SELECT result FROM source [INTO target] [WHERE condition] [GROUP BY fields] [HAVING cond] [ORDER BY sort_order]. OpenSQL SELECT语句的典型结构 读取单行记录 SELECT SINGLE field list FROM table INTO targetWHERE condition 读取多条记录 SELECT [DISTINCT] field list FROM table INTO wa_object WHERE condition 对结构体wa_object的处理语句 ENDSELECT. SELECT field list FROM table INTO | APPENDING [CORRESPONDING FIELDS OF] TABLE itab WHERE condition . 总计表达式 使用总计表达式,可从数据库表的列f 中取得统计数据,有 效的总计表达式有: (1) MAX: 返回列f的最大值 (2) MIN: 返回列f的最小值 (3) SUM: 返回列f的总计 (3) AVG: 返回列f的平均值 (4) COUNT:给值或行计数:其中COUNT( DISTINCT f ) 返回列f 的不同值的个数;COUNT( * ) 返回选定行的总数。 各表达式的括号和参数之间必须包含空格,算术操作符AVG 和 SUM 只能对数字型字段进行操作。 在SELECT语句中指定要访问的CLIENTS 使用逻辑联接操作符进行条件组合 可以使用逻辑链接操作符AND、OR 和 NOT 按照任意顺序来组合六个基本 WHERE条件。如果希望指定几个必须同时满足的条件,可按照下列方法用AND进 行组合: ....WHERE condition1 AND condition2 AND condition3 AND... 如果需要指定几个条件 ,至少要满足其中的一个条件,就可按照下列方法用OR 进 行组合: ....WHERE condition1 OR condition2 OR condition3 OR... 如果只希望选择那些不符合指定条件的数据库记录 ,就可用NOT将其后面的条件 取反, 如下所示: ....WHERE NOT condition NOT 的优先级比AND高,AND的优先级比OR高。但我们可以使用括号来定义所 处理的WHERE条件的优先级顺序,且这些括号都必须加空格。 .......WHERE ( cityfrom = NEW YORK OR cityfrom = BEIJING ) AND NOT ( countryto = FRANCE OR countryto = JAPAN ). 运行时指定行选择的条件 我们也可以在运行期在SELECT OPEN SQL语句的WHERE子句中,指定完整的条件或部分条件。由于系统只有在运行时才能执行SQL条件的语法检查以及生成内部控制块,因此运行时指定条件比在编程期间在程序中指定条件在程序的运行上需要花费更多的CPU 时间。并且,动态指定WHERE 条件只能用于SELECT 语句。在运行时指定完整的条件的语法为: SELECT......WHERE (itab) ....... 给行分组 要将数据库表中的行按指定字段进行分组,应该按照如下格式 使用SELECT 语句的GROUP BY 子句,语法是: SELECT [DISTINCT] c1 c2 c3.. FROM clause INTO clause GROUP BY c1 c2 .... 指定分组条件 使用HAVING 子句给分组选择的结果限定条件,因此HAVING 子句只能用于GROUP BY子句后面。HAVING 子句后面的条件 基本上等同于 WHERE 搜索条件,只是 WHERE 搜索条件不能 包括集合函数,而 HAVING 的条件可以包括集合函数,其语法 如下: SELECT c1 c2 SUM(c3) AVG(c4) ….. FROM clause INTO clause GROUP BY c1 c2 .... HAVING condi.

文档评论(0)

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

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

1亿VIP精品文档

相关文档