native sql -ABAP开发从入门到精通笔记

news/发布时间2024/5/14 21:31:29
  1. Native SQL

    1. SQL概要

    1. OPEN SQL读取数据

      1. Select

Select <lines> <columns>...

Select signle <cols>.... where.

列去重数据

Select distinct <cols>... where...

当取多条数据时,select结果会保存到内表中。

Select ... into...语句的结果不是保存在内保中,而是保存到了wa中,这里就要加一个endselect语句。

【如果是select into wa,就要使用endselect, 在endselect前输出所有的数据记录】

同样使用as来命名别名

<cols> As <alias>

动态select,即表名或者字段名,或者条件用变量来表示

对于动态select使用(dobj)来表示

      1. Into

Into 是存储select语句查询的结果值的目的地

可以是结构体,也可以是内表,也可以是字段

结构体

当查询一条语句时,使用wa,

此时使用corresponding fields of 语句会自动找到相同字段名匹配赋值。

Select ...

Into [CORRESPONGDING FIELDS OF ] wa.

内表

Select ...

Into| APPEND   [CORRESPONGDING FIELDS OF ] TABLE gv_itab PACKAGE SIZE n...

PACKAGE SIZE n...

表示,每次只读取n调数据添加到内表中。

此时注意要用endselect。

单字段

查询表个别子弹或者使用aggregate函数时,

但前提是这两个字段不能存在空白

Select carrid connid into (gv_carrid, gv_connid) from sfligth.

      1. From

Client specified 解除自动client设置。

BY PASSING BUFFER,不会从SAP本地缓冲器中读取数据,直接访问数据库读取数据

UP TO n ROWS,限制查询的个数。

静态选择表名

动态选择表名:(dobj)

JOIN语句

Inner join 与outer join

限制查询个数

静态选择表名

Select from <dbtab> [AS <alias>] <options>

动态选择表

Select ... from (dobj)

join语句

Select ...

from <tab>

[inner] join <dbtab> [as alias] on <cond> [options]...

select single a~carrid b~carname

into corresponding fields of gs_str

from sflight as a

inner join scarr as b

on a~carrid EQ b~carrid

where a~carrid = 'AA'.

Inner join 与 outer join

Select ...

From <tab>

Left [outer] join <dbtab> [as alias]

On <connd>

<options>

限制查询个数

UP TO <n> ROWS

Select ... from <tab> UP TO <n> ROWS.

      1. Where

EQ  =

NE  <>    ><

LT    <

LE    ≤

GT    >

GE    ≥

范围

WHERE  s  [not] between <f1> AND <f2>

字符串比较

Like

List value

[not] In ()

动态条件

将条件拼接为一个字符串,然后再where条件中,动态调用这个字符串变量

For all entries

Select ... for all entries in <itab>

Where <cond>

For all entries 与select的嵌套语句和子查询功能类似,

使用时,where语句中的条件必须是itab中存在的字段

      1. Grouping

Select <f1> <f2> <agg>...

Group by <f1> <f2>

Avg, count, max, min, stddev, sum

Group by 也可以动态指定。

Having,在group by之后的条件选择。

      1. Order by

Order by primary key [descending| ascending]

      1. Subquery

就是在select中嵌套select。

    1. OPEN SQL修改数据

      1. Insert

INSERT INTO <target> VALUES <wa>.

INSERT <target> FROM <wa>.

INSERT <target> FROM TABLE <itab> [ACCEPTIONG DUPLICATE KEYS].

这个语句是为了避免插入相同主键的数据是报错dump error

      1. Update

UPDATE INTO <target> <lines>.

UPDATE <target> FROM <wa>.

UPDATE <target> FROM TABLE <itab>.

UPDATE <target> SET <set1> <set2> WHERE <connd>.

      1. Delete

DELETE <target> FROM <wa>.

DELETE <dbtab>.

DELETE FROM <target> WHERE <connd>.

      1. Modify

MODIFY即有update的功能也有insert的功能,当数据库中表存在该值的时候刽update,不存在的时候,会insert

MODIFY <target> <lines>.

MODIFY <target> FROM <wa>.

MODIFY <target> FROM TABLE <itab>.

    1. NATIVE SQL

优点:可以直接访问数据库的表,可以实现OPENSQL中无法实现的sql

EXEC SQL.

<NATIVE SQL >

ENDEXCE.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.bcls.cn/aYss/7857.shtml

如若内容造成侵权/违法违规/事实不符,请联系编程老四网进行投诉反馈email:xxxxxxxx@qq.com,一经查实,立即删除!

相关文章

044-WEB攻防-PHP应用SQL盲注布尔回显延时判断报错处理增删改查方式

044-WEB攻防-PHP应用&SQL盲注&布尔回显&延时判断&报错处理&增删改查方式 #知识点&#xff1a; 1、PHP-MYSQL-SQL注入-方式增删改查 2、PHP-MYSQL-SQL注入-布尔&延迟&报错 3、PHP-MYSQL-SQL注入-数据回显&报错处理 演示案例&#xff1a; ➢PHP…

SpringCloud有哪些组件

什么是SpringCloud&#xff1f; Spring Cloud是基于Spring Boot的分布式系统开发工具&#xff0c;它提供了一系列开箱即用的、针对分布式系统开发的特性和组件&#xff0c;用于帮助开发人员快速构建和管理云原生应用程序。 Spring Cloud的主要目标是解决分布式系统中的常见问题…

外包干了3个月,技术倒退明显...

先说情况&#xff0c;大专毕业&#xff0c;18年通过校招进入湖南某软件公司&#xff0c;干了接近6年的功能测试&#xff0c;今年年初&#xff0c;感觉自己不能够在这样下去了&#xff0c;长时间呆在一个舒适的环境会让一个人堕落!而我已经在一个企业干了四年的功能测试&#xf…

Surely Vue Table表格css、js方法去除水印

文章目录 Surely Vue Table表格css、js方法去除水印用法 css 去除js去除 Surely Vue Table表格css、js方法去除水印 "surely-vue/table": "^4.2.7","ant-design-vue": "^2.1.2",用法 在main.ts文件中全局引入 import STable from su…

低代码与大语言模型的探索实践

低代码系列文章&#xff1a; 可视化拖拽组件库一些技术要点原理分析可视化拖拽组件库一些技术要点原理分析&#xff08;二&#xff09;可视化拖拽组件库一些技术要点原理分析&#xff08;三&#xff09;可视化拖拽组件库一些技术要点原理分析&#xff08;四&#xff09;低代码…

力扣随笔之移除元素(简单27)

思路&#xff1a;定义一个指针left&#xff0c;使该指针及该指针左边的数全部都不等于val&#xff0c;定义一个遍历指针i&#xff0c;若nums[i] val&#xff0c;则i自加&#xff0c;若nums[i] ! val&#xff0c;则将left&#xff0c;并将nums[i]的值赋给nums[left]&#xff0c…

JavaAPI常用类03

目录 java.lang.Math Math类 代码 运行 Random类 代码 运行 Date类/Calendar类/ SimpleDateFormat类 Date类 代码 运行 Calendar类 代码 运行 SimpleDateFormat类 代码一 运行 常用的转换符 代码二 运行 java.math BigInteger 代码 运行 BigDecimal …

【目标检测新SOTA!v7 v4作者新作!】YOLO v9 思路设计 + 全流程优化 + 手把手训练自己数据

YOLO v9 思路复现 全流程优化 手把手训练自己数据 提出背景&#xff1a;深层网络的 信息丢失、梯度流偏差YOLO v9 设计逻辑可编程梯度信息&#xff08;PGI&#xff09;&#xff1a;使用PGI改善训练过程广义高效层聚合网络&#xff08;GELAN&#xff09;&#xff1a;使用GELAN…

k8s(5)

目录 使用Kubeadm安装k8s集群&#xff1a; 初始化操作&#xff1a; 每台主从节点&#xff1a; 升级内核&#xff1a; 所有节点安装docker &#xff1a; 所有节点安装kubeadm&#xff0c;kubelet和kubectl&#xff1a; 修改了 kubeadm-config.yaml&#xff0c;将其传输给…

面试redis篇-09redis分布式锁

原理 Redis实现分布式锁主要利用Redis的setnx命令。setnx是SET if not exists(如果不存在,则 SET)的简写 Redis实现分布式锁如何合理的控制锁的有效时长? 根据业务执行时间预估 给锁续期 redisson实现的分布式锁-可重入 利用hash结构记录线程id和重入次数 redisson实现的分…

Linux NFC 子系统剖析

1.总览 linux源码中NFC在net/nfc下&#xff0c;文件结构如下图&#xff1a; hci&#xff1a;Host Controller Interface 主要是针对NFC的主机-控制器接口协议 nci&#xff1a;NFC Controller Interface 主要是NFC的控制器接口协议&#xff0c;用于NFCC(NFC Controller)和DH(…

项目解决方案:街道社区视频监控接入、汇聚和联网设计方案

目 录 一、客户需求 二、网络拓扑图 三、方案描述 四、系统配置 1、服务器配置 2、带宽配置 五、方案优势 1. 平台可堆叠使用 2. 支持主流接入协议 4. 多种终端显示 5. 客户端功能强大 6. 一机一档 一、客户需求 1&#xff0c;一个街道有十个社…

spark 少量key倾斜的join优化

背景 在使用spark join时&#xff0c;我们经常遇到少量key拥有大量的数据而导致的数据倾斜的问题&#xff0c;这导致了task任务数据处理非常不均匀而影响最终时效 少量key数据倾斜的join优化 这里有一个前提&#xff0c;join的另一边的表没有数据倾斜问题&#xff0c;也就是…

vue3(vite)+electron打包踩坑记录(1)

vue3(vite)electron打包踩坑记录 - 打包vue 第一步 编译vue 使用vite构建vue&#xff0c;package.json如下 {"name": "central-manager","private": true,"version": "0.0.0","type": "commonjs",&q…

曝iPhone 16 Pro加入两款全新配色:辨识度拉满

博主Majin Bu透露&#xff0c;苹果为即将推出的iPhone 16 Pro系列提供全新的两款配色&#xff0c;分别为“沙漠钛金”和“钛灰色”两种颜色选择。 该博主表示&#xff0c;“沙漠钛金”类似于2022年iPhone 14 Pro上提供的金色选项&#xff0c;但更深更重。另一方面&#xff0c;“…

数字化运维与AIOps

干掉传统运维的不是devops&#xff0c;不是容器化&#xff0c;而是AI。随着未来基础设施的膨胀和复杂度急剧提升&#xff0c;人类运维能力已经显得力不从心。运维最终的归宿一定是人类决策&#xff0c;AI汇报与执行。 什么是数字化运维 数字化运维是一种基于信息技术手段数字化…

剪辑视频调色怎么让画质变得清晰 视频剪辑调色技巧有哪些方面 剪辑视频免费的软件有哪些 会声会影调色在哪里 会声会影模板素材

视频调色的作用有很多&#xff0c;除了进行风格化剪辑以外&#xff0c;还可以让作品的画质变得清晰。通过调色来增强画面的清晰度&#xff0c;在观感上也会显得十分自然。视频调色的技巧有很多&#xff0c;并且原理大都十分简单。有关剪辑视频调色怎么让画质变得清晰&#xff0…

R语言混合效应(多水平/层次/嵌套)模型及贝叶斯实现技术应用

回归分析是科学研究中十分重要的数据分析工具。随着现代统计技术发展&#xff0c;回归分析方法得到了极大改进。混合效应模型&#xff08;Mixed effect model&#xff09;&#xff0c;即多水平模&#xff08;Multilevel model&#xff09;/分层模型(Hierarchical Model)/嵌套模…

C语言—函数

1.编写一个函数&#xff0c;通过输入一个数字字符&#xff0c;返回该数字29. /*1.编写一个函数&#xff0c;通过输入一个数字字符&#xff0c;返回该数字 */#include <stdio.h>//函数定义,返回类型为int int char_num(char c) {if(c > 0 && c < 9) //检查…

《隐私计算简易速速上手小册》第7章:隐私计算与云计算/边缘计算(2024 最新版)

文章目录 7.1 云计算中的隐私保护7.1.1 基础知识7.1.2 主要案例:使用 Python 实现云数据的安全上传和访问7.1.3 拓展案例 1:实现基于角色的访问控制7.1.4 拓展案例 2:使用 Python 保护 API 安全7.2 边缘计算的隐私问题7.2.1 基础知识7.2.2 主要案例:使用 Python 实现边缘设…
推荐文章