工作笔记之 SELECT 语句在 SAP ABAP 中的用法总结(下)(1)

简介: 在上一篇文章中,我们介绍了 ABAP 的查询语句关键的三个部分:1、SELECT result 部分2、FROM source 部分3、INTO target 部分

引言

上一篇文章中,我们介绍了 ABAP 的查询语句关键的三个部分:

  1. SELECT result 部分
  2. FROM source 部分
  3. INTO target 部分


常见语法:

SELECT result
  FROM source
  INTO target
  [WHERE condition]
  [GROUP BY fields]
  [HAVING cond]
  [ORDER BY fileds].

并介绍了上述三个主体部分的使用方法,这篇文章我将来介绍后续能在 SELECT 操作的可选部分,并借此来帮助我们进行高效的查询。主要包括如下:

  • WHERE 条件
  • IN 操作符
  • GROUP BY
  • HAVING
  • ORDER BY
  • UP TO N ROWS
  • FOR ALL ENTRIES
  • 子查询


同时,从 SAP NetWeaver 7.5 开始,UNION 方法可以用来在两个 SELECT 语句的结果集之间创建一个联合。

WHERE 条件

WHERE 条件后面跟随的是查询的限制条件。也是 SELECT 查询中最常被使用的条件,因为我们在实际情况中并非总是需要获取所有数据,所以需要有条件的进行查询。


WHERE 基本用法:选取某个字段的某个情况。比如我们从 sflight 表中选取 carridLH 的信息:

SELECT carrid connid  
  FROM sflight 
  INTO CORRESPONDING FIELDS OF TABLE gt_out 
  WHERE carrid = 'LH'.


image.png


可以看到,这次查询只返回 carrid = LH 的结果集。


如果想使用多个条件,可以使用 AND 连接多个字段,如:

SELECT mandt carrid connid fldate
  FROM sflight
  INTO CORRESPONDING FIELDS OF TABLE gt_out
  WHERE carrid = 'LH'
    AND connid = '402'.


image.png

条件运算符

WHERE 可以使用的条件运算符很多:


  • EQ (或 = 号,即等于)
  • NE (或 <> 号,即不等于)
  • LT (或  < 号,即小于号)
  • GT (或 > 号。即大于号)
  • LE(或 <= 号,即小于等于)
  • GE (或 >= 号,即大于等于)
  • BETWEEN (范围运算符)


比如使用与字段不相等的示例:

SELECT mandt carrid connid fldate
  FROM sflight
  INTO CORRESPONDING FIELDS OF TABLE gt_out
  WHERE carrid NE 'LH'
    AND connid <> '402'.

运行结果如下,不会存在 Airline = LHFlight No. = 402 的结果:

image.png

范围运算符那 BETWEEN 举例:

SELECT mandt carrid connid fldate
  FROM sflight
  INTO CORRESPONDING FIELDS OF TABLE gt_out
  WHERE carrid BETWEEN 'DL' AND 'LH'.
相关文章
|
SQL
SAP ABAP-OPENSQL-数值函数简介
S4中针对OPENSQL新提供一些函数
166 0
|
SQL
SAP ABAP-OPENSQL-字符串函数介绍
S4中SQL新语法字符串函数
253 0
|
SQL
SAP ABAP-OPENSQL-日期/时间戳函数
S4提供针对OPENSQL一些新的SQL函数调用,本文展示相关函数的使用
762 0
SAP ABAP-删除工序示例代码
ABAP-删除工序示例代码
192 0
SAP ABAP 程序调用设置成后台作业模式
ABAP 程序调用设置成后台作业模式
556 0
|
9月前
|
程序员
开发语言漫谈-ABAP
ABAP是SAP公司专门用于SAP软件环境的专门语言
|
BI
SAP ABAP在线预览文档对象的开发实现
应用场景:有些定制化开发(报表/功能增强等)完成之后,客户需要将其操作手册或者相关文档放在某个报表的初始画面,供实际操作者在线查阅,当然这个功能也同样类似于模板的下载,这里就以在线预览(直接打开)为例进行说明。
251 0
|
SQL 设计模式 前端开发
【置顶】SAP ABAP开发实战——从入门到精通系列目录
本文章为SAP ABAP开发实战——从入门到精通系列的目录以及关于该教程的后续写作计划表
1828 0
【置顶】SAP ABAP开发实战——从入门到精通系列目录
|
前端开发 JavaScript 数据库
如何使用 Restful ABAP Programming 编程模型开发一个支持增删改查的 Fiori 应用(二)
Restful ABAP Programming 编程模式是 ABAP 这门编程语言在不断向前进化的过程中,诞生的一门新的编程模型,简称为RAP模型。
175 0
如何使用 Restful ABAP Programming 编程模型开发一个支持增删改查的 Fiori 应用(二)
|
程序员 BI
也谈SAP业务顾问如何避免被ABAP开发顾问怒打
也谈SAP业务顾问如何避免被ABAP开发顾问怒打
也谈SAP业务顾问如何避免被ABAP开发顾问怒打