SAP ABAP——OPEN SQL(三)【SELECT】

简介: 本文主要介绍SAP ABAP中OPEN SQL的SELECT语句

本文主要介绍SAP ABAP中OPEN SQL的SELECT语句


SELECT语句简介

SELECT <lines> <columns> FROM <db> WHERE <condition>

其中<lines>代表查询的件数,<columns>代表查询的字段名


SELECT SINGLE

SELECT SINGLE <cols> FROM <db> WHERE <condition>

该语句用于从数据库表中查询单条数据


SELECT SEVERAL LINE

SELECT [DISTINCT] <columns> FROM <db> WHERE <condition>

[DISTINCT]为可选项,若选择则自动删除所查询数据的重复项,在本文最后的一个案例代码效果中有演示!!


SELECT并且输出打印的两种方式

1. SELECT...ENDSELECT

REPORT ZWYZTEST_FOR_MANGO.
DATA:GT_SFLIGHT TYPE TABLE OF SFLIGHT.
DATA:GS_SFLIGHT TYPE SFLIGHT.
SELECT * INTO GS_SFLIGHT FROM SFLIGHT WHERE CARRID = 'AC'.
   WRITE:/ GS_SFLIGHT-CARRID,GS_SFLIGHT-CONNID.
ENDSELECT.

08b5ba1d8abf14810c89c582ec29e8d.png

2.SELECT(LOOP...ENDLOOP)

REPORT ZWYZTEST_FOR_MANGO.
DATA:GT_SFLIGHT TYPE TABLE OF SFLIGHT.
DATA:GS_SFLIGHT TYPE SFLIGHT.
SELECT * INTO CORRESPONDING FIELDS OF TABLE GT_SFLIGHT FROM SFLIGHT WHERE CARRID = 'AC'.
LOOP AT GT_SFLIGHT INTO GS_SFLIGHT.
   WRITE:/ GS_SFLIGHT-CARRID,GS_SFLIGHT-CONNID.
ENDLOOP.

5dec377645e46db5903fbf72ca323f4.png

数据库表SFLIGHT(最下方案例也使用该数据库表):

b5ce46ce53c8c9a1049ef6f418b5028.png


SELECT...AS

SELECT <columns> AS <alias>...

AS可以用来为所查询的数据库表取别名,<alias>为表的别名


动态SELECT语句

可以动态定义SELECT语句的字段,保存动态语句的结构体GS_LINE最多可以容纳72位CHAR类型,结构体GS_LINE为NULL时与*相同

1.使用DISTINCT

REPORT ZWYZTEST_FOR_MANGO.
DATA:GT_SFLIGHT TYPE TABLE OF SFLIGHT.
DATA:GS_SFLIGHT TYPE SFLIGHT.
DATA:GS_LINE(72) TYPE C.
GS_LINE = 'CARRID CONNID'.
   SELECT DISTINCT (GS_LINE) INTO CORRESPONDING FIELDS OF TABLE GT_SFLIGHT FROM SFLIGHT WHERE CARRID = 
'AC'.
LOOP AT GT_SFLIGHT INTO GS_SFLIGHT.
   WRITE:/ GS_SFLIGHT-CARRID,GS_SFLIGHT-CONNID.
ENDLOOP.

e17bbc57cb9726f51e0c45db92ba597.png

2. 不使用DISTINCT

REPORT ZWYZTEST_FOR_MANGO.
DATA:GT_SFLIGHT TYPE TABLE OF SFLIGHT.
DATA:GS_SFLIGHT TYPE SFLIGHT.
DATA:GS_LINE(72) TYPE C.
GS_LINE = 'CARRID CONNID'.
   SELECT (GS_LINE) INTO CORRESPONDING FIELDS OF TABLE GT_SFLIGHT FROM SFLIGHT WHERE CARRID = 
'AC'.
LOOP AT GT_SFLIGHT INTO GS_SFLIGHT.
   WRITE:/ GS_SFLIGHT-CARRID,GS_SFLIGHT-CONNID.
ENDLOOP.

155dc3e21f79c546ad3a3c25eb176f4.png

目录
相关文章
|
12月前
|
存储 人工智能 JSON
用 SAP ABAP 接入国内 AI 产品通用接口技术指南 1、调用AI接口
SAP 系统与国内先进的 AI 产品(如百度文心一言、阿里通义千问、字节跳动云雀模型、华为盘古大模型、豆包、Deepsheek 等)集成通用接口技术指南
1528 23
SAP ABAP 程序调用设置成后台作业模式
ABAP 程序调用设置成后台作业模式
892 0
SAP ABAP 内表排序 动态字段排序
对于动态内表排序引用ABAP_SORTORDER_TAB
634 0
|
SQL
SAP ABAP-OPENSQL-数值函数简介
S4中针对OPENSQL新提供一些函数
288 0
|
SQL
SAP ABAP-OPENSQL-字符串函数介绍
S4中SQL新语法字符串函数
535 0
|
SQL
SAP ABAP-OPENSQL-日期/时间戳函数
S4提供针对OPENSQL一些新的SQL函数调用,本文展示相关函数的使用
1370 0
SAP ABAP-删除工序示例代码
ABAP-删除工序示例代码
393 0
SAP ABAP 检查事务码权限
检查用户是否有自开发事务码的权限
546 0
|
BI
SAP ABAP在线预览文档对象的开发实现
应用场景:有些定制化开发(报表/功能增强等)完成之后,客户需要将其操作手册或者相关文档放在某个报表的初始画面,供实际操作者在线查阅,当然这个功能也同样类似于模板的下载,这里就以在线预览(直接打开)为例进行说明。
483 0
SAP ABAP字符串拼接保留空格
字符串操作保留空格
1810 0