工作笔记之 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'.
相关文章
SAP ABAP 程序调用设置成后台作业模式
ABAP 程序调用设置成后台作业模式
502 0
|
XML JSON 监控
《李斌的笔记》SAP 全部文章目录、快速导航、持续更新
我把自己的全部文章都整理成目录,放在这篇文章中以实现快速导航,这样更方便阅读,本章内容持续更新。
269 0
|
SQL
SAP ABAP-OPENSQL-数值函数简介
S4中针对OPENSQL新提供一些函数
139 0
|
SQL
SAP ABAP-OPENSQL-字符串函数介绍
S4中SQL新语法字符串函数
204 0
|
SQL
SAP ABAP-OPENSQL-日期/时间戳函数
S4提供针对OPENSQL一些新的SQL函数调用,本文展示相关函数的使用
622 0
SAP ABAP-删除工序示例代码
ABAP-删除工序示例代码
167 0
介绍一款 ABAP 代码搜索工具 RS_ABAP_SOURCE_SCAN 试读版
介绍一款 ABAP 代码搜索工具 RS_ABAP_SOURCE_SCAN 试读版
|
监控
学会使用 SAP ABAP Application Log 在代码里添加应用日志记录功能试读版
学会使用 SAP ABAP Application Log 在代码里添加应用日志记录功能试读版
124 0
如何通过 ABAP 代码给 SAP OData 元数据增添注解试读版
如何通过 ABAP 代码给 SAP OData 元数据增添注解试读版
如何使用 ABAP 代码发送邮件到指定邮箱试读版
如何使用 ABAP 代码发送邮件到指定邮箱试读版
186 0

相关实验场景

更多