【ABAP系列】SAP ABAP7.40新语法简介第二篇
前言部分
大家可以关注我的公众号,公众号里的排版更好,阅读更舒适。
正文部分
从7.40开始,SP08可以使用在INTO之后用7.40,SP02引入的声明运算符DATA(...)来放置内联声明。
下面举例说明比较清晰:
DATA id TYPE scarr-carrid.
cl_demo_input=>request( CHANGING field = id ). SELECT SINGLE carrname AS name, carrid AS id
FROM scarr
WHERE carrid = @id
INTO @DATA(result). cl_demo_output=>display( result ).
看到语法不同了吗,如果没看到,请回到你现有的系统中对比
上面语法是INTO DATA里面的写法,下面说一下INTO TABLE里的写法
举例说明:
SELECT carrname AS name, carrid AS id
FROM scarr
INTO TABLE @DATA(result). cl_demo_output=>display( result ).
看到语法不同了吗
根据SELECT列表中定义的结果集,声明基本数据对象,结构或内部表。 有关类型构造的详细信息,请参阅官方文档。
将7.40,SP05引入SELECT列表中的SQL表达式使用7.40,SP08进行了增强,如下所示:
1、可以在GROUP BY之后使用SQL表达式
2、可以与聚合一起使用SQL表达式
3、可以使用SQL表达式作为聚合的参数
4、可以使用除简单CASE之外的已搜索CASE表达式
对上述的描述,下面举例说明更清楚一点
SELECT num1, num2, CASE WHEN col1 < AND col2 < THEN @both_l WHEN col1 >= AND col2 >= THEN @both_gt ELSE @others END AS group FROM demo_expressions ORDER BY group INTO TABLE @DATA(results).
在SELECT列表中,可以使用语法data_source〜*从7.40,SP08开始指定数据源的所有列。 这在使用连接时很方便。
举例说明:
SELECT scarr~carrname, spfli~*, scarr~url FROM scarr INNER JOIN spfli ON scarr~carrid = spfli~carrid INTO TABLE @DATA(result).
1、从7.40,SP08开始,INTO子句可以和应该(haha)在SELECT语句的其他子句之后使用。 那些不被视为子句的添加UP TO n ROWS,BYPASSING BUFFER和CONNECTION必须放在INTO子句之后。
2、此更改背后的原理是,INTO子句不是标准SQL的一部分,而是定义SQL和ABAP之间的数据接口。 为了实现Open SQL的SQL部分中的未来增强, UNION,必须从SQL部分中删除INTO子句。
一些限制已删除。 例如。 从7.40开始,SP08可以在SELECT列表中的算术表达式的运算符前面放一个减号,可以对聚合执行一个简单的CASE,在ON之后可以在连接条件中使用LIKE和IN(...) 您可以动态地在WHERE之后指定子查询。
但是,如果您使用此处列出的任何新功能(如SP05已有的),则将以严格模式执行Open SQL的语法检查,其中应用更严格的语法规则。 例如。 您必须在主机变量前使用逗号分隔的列表和转义符号@。 通过这种方式,至少在Open SQL ABAP中以向下兼容的方式实施一个依赖于发布的deprecation概念。
【ABAP系列】SAP ABAP7.40新语法简介第二篇的更多相关文章
- 【ABAP系列】SAP ABAP7.40新语法简介第一篇
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列]SAP ABAP7.40新语法简 ...
- 【第八篇】SAP ABAP7.5x新语法之F4增强【续】
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:SAP ABAP7.5x系列之F4增强[续] ...
- 【第七篇】SAP ABAP7.5x新语法之F4增强
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:SAP ABAP7.5x系列之F4增强 前言部分 ...
- 【第五篇】SAP ABAP7.5x新语法之命名规约
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:SAP ABAP7.5x系列之命名规约 命名 ...
- 【第一篇】SAP ABAP7.5x新语法之预定义数据结构
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:SAP ABAP7.5x系列之预定义数据结构 前 ...
- 【第六篇】SAP ABAP7.5x新语法之SQL注入
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:SAP ABAP7.5x系列之SQL注入 前 ...
- 【第四篇】SAP ABAP7.5x新语法之CREATE DATA&INTERFACE
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文地址:SAP ABAP7.5x系列之CREATE DA ...
- 【第三篇】SAP ABAP7.5x新语法之程序结构&SubScreen
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文地址:SAP ABAP7.5x系列之程序结构& ...
- 【第二篇】SAP ABAP7.5x新语法之OPEN SQL
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:SAP ABAP7.5x系列之OPEN SQL ...
随机推荐
- JAVA GUI设
1.两种设置大小的方式: //Border border1=BorderFactory.createEmptyBorder(20,20,20,20); //设置大小 panel.setB ...
- java 学习笔记(五) Zookeeper的集群配置和Java测试程序
参考博客 http://blog.csdn.net/catoop/article/details/50848555 http://blog.csdn.net/randompeople/article/ ...
- QR分解迭代求特征值——原生python实现(不使用numpy)
QR分解: 有很多方法可以进行QR迭代,本文使用的是Schmidt正交化方法 具体证明请参考链接 https://wenku.baidu.com/view/c2e34678168884868762d6 ...
- nginx部署网站step by step
安装后,修改nginx.conf,在httpd{}中添加 include /nginx/vhosts/*.conf; 如果没有vhosts就新建一个文件夹 *.conf是一种正则表达式用法,表示纳入一 ...
- JAVA笔记5-package和import
1.基本介绍 为便于管理大型软件系统中数目众多的类,解决类的命名冲突问题,Java引入包(package)机制,提供类的多重类命名空间.在实际项目开发中任何类都应该定义在包中. (1)package语 ...
- Tomcat部署多个Springboot项目报错 InstanceNotFoundException: com.alibaba.druid:type=DruidDataSourceStat
在一个tomcat服务器下部署了多个采用阿里druid作为数据连接池,结果启动报错.原因是不能在一个tomcat服务器下不能直接部署多个druid作为数据连接池的项目,需要配置. 解决办法: 在spr ...
- windows和linux开机自启动设置
Windows 1,启动快捷方式 开始>程序>启动 文件夹中拷贝进去需要开机启动的程序快捷方法,此方法需要相应用户登录系统2,注册为服务,设置启动方式为自动 a, sc命令 ...
- 计算机网络(十三),Socket编程实现TCP和UDP
十三.Socket编程实现TCP和UDP 1.TCP (1)TCPServer.java类 package com.interview.javabasic.socket; import com.int ...
- 文件选择对话框:CFileDialog
程序如下: CString FilePathName; //文件名参数定义 CFileDialog Dlg(TRUE,NULL,NULL, ...
- Color a Tree
题目链接:Click here Solution: 看起来不太能dp,则考虑树上贪心 题目要求一个点必须先染父亲才能染自己,就给了我们启示,贪心的合并点 我们定义一个点的权重为这个点的价值和/点数,然 ...