首页 > 其他分享 >关于 FOR ALL ENTRIES IN 去重

关于 FOR ALL ENTRIES IN 去重

时间:2022-09-30 23:41:51浏览次数:52  
标签:TABLE lt airpfrom 关于 ENTRIES cityfrom spfli spfli1

货铺QQ群号:834508274

下面开始干货:


做运维的时候,发现一个问题。

只有特定情况下出现了错误。

debug的时候发现是一条SQL语句取数没取全。

原因就是使用了 FOR ALL ENTRIES IN。

直接看demo:

SPFLI表数据

关于 FOR ALL ENTRIES IN  去重_码农

代码

关于 FOR ALL ENTRIES IN  去重_微信_02

首先在 1处打断点

关于 FOR ALL ENTRIES IN  去重_数据_03

只取出来4条

关于 FOR ALL ENTRIES IN  去重_码农_04

自动去重了

再到断点2

关于 FOR ALL ENTRIES IN  去重_微信_05

9条,数据是全的

关于 FOR ALL ENTRIES IN  去重_码农_06

所以以后使用 FOR ALL ENTRIES IN  的时候,select的字段要斟酌好,最好把所有主键都取出来,防止自动去重的时候丢数据



demo代码

*&---------------------------------------------------------------------*
*& Report ZLM_TEST02
*&---------------------------------------------------------------------*
*&
*&---------------------------------------------------------------------*
REPORT zlm_test02.

DATA:lt_spfli1 TYPE TABLE OF spfli.
DATA:lt_spfli2 TYPE TABLE OF spfli.


SELECT * FROM spfli INTO TABLE lt_spfli1
  WHERE cityfrom = 'FRANKFURT'.

CHECK sy-subrc = 0.

SELECT
  cityfrom
  airpfrom
  cityto
  FROM spfli
  INTO CORRESPONDING FIELDS OF TABLE lt_spfli2
  FOR ALL ENTRIES IN lt_spfli1
  WHERE cityfrom = lt_spfli1-cityfrom
   AND airpfrom  = lt_spfli1-airpfrom.

IF  1 = 2.

ENDIF.

SELECT
  cityfrom
  airpfrom
  cityto
  FROM spfli
  INTO CORRESPONDING FIELDS OF TABLE lt_spfli2

  WHERE cityfrom = 'FRANKFURT'
   AND airpfrom  = 'FRA' .

IF  1 = 2.

ENDIF. 



标签:TABLE,lt,airpfrom,关于,ENTRIES,cityfrom,spfli,spfli1
From: https://blog.51cto.com/u_15680210/5727533

相关文章

  • 关于6000与6666端口无法访问
    背景:初玩docker的时候,把一个端口映射到6666,但无法访问,排查几次,Dockerfile和启动脚本应该没有问题。换了一个端口,比如6677,8080竟然就好了。说明应该是端口的问题,报错......
  • 《程序员的修炼之道:从小工到专家》阅读笔记其二(关于重复)
    第二章名为注重实效的途径,本章节通过大量篇幅从以下几个方面来诠释了途径。既然注重实效,那么肯定要减少繁琐的代码,于是,作者从重复这一方面入手。从程序维护入手,引......
  • 关于对象存储服务OBS,你真的了解么?
    自2015年提出“互联网+”以来,互联网信息技术对于企业发展的帮助作用越来越大,众多企业通过借助网络信息技术实现利润增值,企业对于网络信息数据也越来越依赖。 但网络信息数......
  • 产品的帮助中心怎么建设?关于编辑帮助文档的几个小技巧~
    随着互联网的发展,各种工具的入门门槛越来越低,现在在B站上,几乎所有的工具都能找到视频教学工具,而且质量都很好。当然,如果你愿意花钱买知识,可以在淘宝上找到更好的课程,而且大......
  • 关于css方面的回顾学习
    在css中有几个常用的单位:px、em、%这三个单位都是相对的单位。px:像素值,这个是相对于显示屏分辨率而言的。em:就是给字体设置font-size值的,如果元素的font-size为14px,那么1em......
  • 关于企业网络架构,你必须要了解这些......
    企业网络的架构的基本介绍?随着网络的逐步普及,企业不仅仅需要知道公司组织结构是什么,还必须了解企业网络架构是什么?一套成熟的网络架构可以保证系统的稳定性、安全性、可......
  • 关于手机端H5通知已读未读的一个简单demo
    情景:系统发通知给每一个员工,每个员工有一个系统系统,点击提示,通知列表有已读和未读主要通过redis来实现,大致思路:将通知和员工绑定作为key,如果员工点进链接证明已读则将key......
  • 关于软件开发转数据开发的困惑,自己是否该转型呢?
    干嘛要转型?转型是A变成B,为什么不是A+B?即做软件开发也做数据开发!!!!跨界型复合型人才才最吃香!!!!软件开发水平90%的专长或数据开发水平90%的专长敌不过这二者水平都是80%的人,而事......
  • 关于SSHD的端口维护(改变及增加侦听端口)
    常见的有两种维护需求1.改变SSHD的侦听端口vim/etc/ssh/sshd_configPort2222#AddressFamilyany#ListenAddress0.0.0.0#ListenAddress::效果[root@server~]#systemct......
  • 关于Mysql [ERR] 1118 - Row size too large (> 8126)解决方法
    Mysql版本:8.0系统:win10错误描述:[ERR]1118-Rowsizetoolarge(>8126).ChangingsomecolumnstoTEXTorBLOBorusingROW_FORMAT=DYNAMICorROW_FORMAT=COMP......