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

目录
相关文章
|
2月前
|
存储 人工智能 JSON
用 SAP ABAP 接入国内 AI 产品通用接口技术指南 1、调用AI接口
SAP 系统与国内先进的 AI 产品(如百度文心一言、阿里通义千问、字节跳动云雀模型、华为盘古大模型、豆包、Deepsheek 等)集成通用接口技术指南
SAP ABAP 程序调用设置成后台作业模式
ABAP 程序调用设置成后台作业模式
603 0
|
SQL
SAP ABAP-OPENSQL-数值函数简介
S4中针对OPENSQL新提供一些函数
178 0
|
SQL
SAP ABAP-OPENSQL-字符串函数介绍
S4中SQL新语法字符串函数
309 0
|
SQL
SAP ABAP-OPENSQL-日期/时间戳函数
S4提供针对OPENSQL一些新的SQL函数调用,本文展示相关函数的使用
898 0
SAP ABAP-删除工序示例代码
ABAP-删除工序示例代码
222 0
SAP ABAP 检查事务码权限
检查用户是否有自开发事务码的权限
268 0
SAP MM/FI_运费处理方式
常见的采购运费处理方式
SAP MM 途损处理方式
通常客户采购业务需求提到货物运输有损耗,需要针对此业务给出合理方案输出,下面笔者针对此类业务分析下各种实现方案的可行性!
SAP MM初阶之事务代码MIGO界面批次拆分最多输入15行?
SAP MM初阶之事务代码MIGO界面批次拆分最多输入15行?
SAP MM初阶之事务代码MIGO界面批次拆分最多输入15行?