问题标签 [opensql]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
92 浏览

combinations - 比较开放 SQL 中 4 个字段的重复项

我想比较开放 SQL 中的 4 个字段是否存在重复项。

场景:用户有 4 个字段要输入。名字 (N1)、姓氏 (N2)、附加名字 (N3) 和附加姓氏 (N4)。

现在算法是这样工作的:它连接 N1 + N2 + % 和 N2+ N1 + %。因此,如果用户在任何字段中输入,查询将查找 N1N2% 或 N2N1%。这意味着对于 2 个字段,有 2 个!可能的组合。现在有了 2 个额外的字段,这个算法会爆炸,因为将有 4 个!要检查的组合。任何想法如何解决这个问题?

注意:我们进行这种组合检查是因为用户可以在任何给定的输入字段中输入数据。因此,我们检查所有字段组合。不幸的是,这无法改变。

编辑:我不能假设它以前以这种方式设计的顺序。因此,组合的并发症。

Edit2:我喜欢检查各个部分的想法。但我们想要做的理想是将所有字符串连接在一起并检查 DB 中的子字符串。在 open-sql 中,它使用 like 语句完成。我们的 DB 表已经为 N1+N2 组合存储了这样的连接字符串。现在需要将其扩展到 4 个字段。

0 投票
1 回答
2876 浏览

abap - 如何在 ABAP 中检索层次结构的所有子节点?

假设我有一个表示分层结构的数据库表,其中包含以下列:

  • ID
  • 前任_id
  • 姓名

从给定的 ID 开始,我必须能够检索所有子节点(不仅是直接子节点)。由于 ABAP 中不提供公用表表达式(带递归),因此解决此问题的最佳方法是什么?

我想到的一个可能的解决方案是遍历结果集(循环或使用游标),并递归调用检索直接子节点的函数。但是,我希望有一种更优雅的方法。

0 投票
1 回答
10522 浏览

abap - 从表 A 中选择所有字段,但从 B 中选择单个字段?

JOIN当我想获取一个表的所有字段但只从另一个表中选择字段时,ABAP 的 OpenSQL 中是否有一种方法可以简化选择列?

例如,在 mysql 中,我们可以简单地做

但是,OpenSQL 似乎不允许选择tb1~*, tb2~b, tb2~d,所以我不得不求助于这个:

对于非常大的表,尤其是标准表,这变得笨拙、难以阅读并且维护起来更烦人。

有没有更好的方法来选择 tb1 的所有字段和 tb2 中的一些字段?

0 投票
1 回答
456 浏览

abap - SAP Query:大写和替换可能吗?

我们的应用程序有一个 GUI,用于通过 MAC 地址选择设备。这时候我必须用大写字母和冒号输入MAC地址。

但是,我经常使用 Windows 格式的 MAC 地址,它是小写的,并且带有连字符而不是冒号。

开发人员一直告诉我,不可能应用大写转换并用冒号替换连字符。在这个项目中,我担任 QA,我既不熟悉 SAP Query 也不熟悉 ABAP。但作为 C# 和 Java 项目的开发人员,我真的不敢相信这一点。

SAP Query 中是否有办法将用户输入从例如转换aa-bb-cc-dd-ee-ff为匹配数据库内容AA:BB:CC:DD:EE:FF

数据类型为 C 长度 17。使用参数填充查询时的程序 GUI 是 RSSYSTDB。当时的程序 Dynpro 是 AQZZ/xxx/yyy,其中 xxx 是我们的合作伙伴命名空间,yyy 对应于交易。显示结果时的程序 GUI 和程序 DynPro 是 SAPLAQRUNT。

0 投票
2 回答
181 浏览

abap - SQL 的正确语法是什么?

我正在尝试在 ABAP 中创建一个选择多个字段但无法找出正确语法的 SQL 语句。

这就是我正在做的事情,它产生了一个错误:

所有字段都在同一个表中。

0 投票
1 回答
154 浏览

abap - SQL 语句将结果返回到 ALV 表中

我对 ABAP 相当陌生,并编写了一条 SQL 语句来将项目列表返回到 ALV。但是,当我执行程序时,它什么也不返回。下面是我写的代码。我创建了一个表格类型来仅显示结果中我需要的列。

0 投票
1 回答
920 浏览

abap - 在 WHERE 条件下使用减法打开 SQL 语句

问题出在 ABAP 中a - b。有没有办法制作这样的WHERE?

0 投票
1 回答
10161 浏览

abap - ABAP 硬编码值到 SELECT 和字段到另一个字段

可以在 ABAP 中进行选择并包含硬编码值并将值放在任何字段中。

在我的例子中,我必须根据 VKORG 用公司代码 BUKRS 填充一个范围,所以我必须像这样在 TVKO 上进行选择:

但我有一个垃圾场。

我知道一个更长的解决方案,手动填充 TVKO 表并制作一个循环来填充范围,但我确信我们有一个解决方案可以在我的示例中的一个操作中做到这一点。

谢谢,专家。

0 投票
1 回答
875 浏览

abap - SAP OpenSQL 中是否有某种“反向通配符”?

所以我们有一个表,其中包含一个包含字符串的字段。
这些字符串可以包含通配符。

例如:

现在我想从该表中选择这些通配符。
例如这样的:

该 SELECT 应该从我的表中获取 ID = 2 的记录。
请注意,可以使用%而不是*用作表中的通配符。

有什么方法可以在 OpenSQL 中实现这一点?

0 投票
2 回答
2560 浏览

abap - 如何使用 ABAP 检查特定视图或表中是否存在字段

我有 100 个视图的列表,我需要检查这些视图是否具有字段AB. 如果这 100 个视图中的任何一个使用这两个字段,我需要显示一条消息。任何现有的功能模块都会有所帮助。