点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
与标题相同,但有许多问题。
首先,在OracleDB中,据我所知,每当您运行报表程序时,Select〜into子句总是在内部表中带来相同的结果(不仅仅是结果-相同的索引)。
但是在HDB中,我认为运行报告并不总是一样。
例如(Select子句按f1排序)
您看到的是,当我运行报告时,第一次运行-itab索引2转到第二次运行-itab索引3。
是吗? 还是我知道有什么问题?
第二,当我使用UPDATE〜SET子句更新ABAP目录表时,索引也会更改吗?
例如(与第一个相同,Select子句按f1排序)
像一张图片-索引号可以更改吗?
*** PS更改了第二张图片-错误的f3值。
(5.5 kb)
在HANA和Oracle数据库中,如果未使用ORDER BY指定结果条目,则不应期望任何顺序。
如果是您关注的顺序,则应始终使用ORDER BY(选择)或 您指定的列的SORT(itab)。
我确认,使用SELECT"除非您使用ORDER BY保证,否则不应期望结果条目的任何顺序[除非您]保证。"
这是标准SQL的众所周知的功能。 人们通常会感到困惑,因为通常他们会观察到顺序保持稳定,但是实际上顺序可能随时更改,特别是在创建索引时,但这不是唯一原因。
这是因为数据库可能 实现多种算法,例如并行化等(它不仅取决于索引)-有关更多信息,请参见数据库系统的文档。
在Hana数据库中,每次执行DB SELECT语句时都必须指定ORDER BY。 我们曾经让Oracle通过数据库表键对结果进行排序,但是情况不再如此
如上所述,在Hana db中不能保证结果的任何顺序。 选择之后,使用sort排序所有您希望对结果集进行排序的字段
,对不起,我的英文简短
我认为这是正确的问题。 我的意思是,我使用ORDER BY子句按F1字段排序。
但是如果我更新原始表,可以更改索引,例如第二次运行,第一个表(请参阅原始索引)吗?
或者,始终与原始表格相同(例如第二次运行,第二张表格?)
一周热门 更多>