删除表列的内容

2020-09-23 17:03发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


嗨,

我有一个大约有6300万条记录的数据库表。

在运行一段代码之前,我必须删除2个特定列的内容。

是否存在一条delete语句,用于仅删除某些列的内容,同时仍将这些列保留在表的结构中?

是否必须对每一行都运行update语句,如果将其替换为certian列中的空白数据,是否会影响性能?

此致

Cleo

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


嗨,

我有一个大约有6300万条记录的数据库表。

在运行一段代码之前,我必须删除2个特定列的内容。

是否存在一条delete语句,用于仅删除某些列的内容,同时仍将这些列保留在表的结构中?

是否必须对每一行都运行update语句,如果将其替换为certian列中的空白数据,是否会影响性能?

此致

Cleo

付费偷看设置
发送
10条回答

您的数据库系统最终会运行Open SQL语句,因此请转到软件供应商(Oracle,SAP HANA,Microsoft Server SQL,IBM DB/2等)的论坛/文档。

但是,当然UPDATE ... SET ...是一个众所周知的SQL语句,它执行批量更新,而不是一个一个地进行。 实际上,从技术上讲,它始终是一一对应的,但是它当然不在ABAP方面,而且与多个更新相比,它始终具有更高的性能。

请注意,您还可以在DDIC中定义一个更新数据库视图,以便仅选择要更新的主键和列,然后执行UPDATE ... FROM TABLE update_database_view。

三十六小时_GS
2楼-- · 2020-09-23 17:28

用德语?

哎,真难
3楼-- · 2020-09-23 17:07

创建没有两个字段的新DSO。 创建从DSO1到DSO2的转换和DTP-直接映射,如果您使用的是正确级别并且正在使用HANA,则向下推至HANA。 创建另一个从DSO2到DSO1的转换和DTP。

现在,在您的流程链中,运行第一个DTP,使用CL_SQL_STATEMENT删除本地SQL的DSO1,运行第二个DTP。

灬番茄
4楼-- · 2020-09-23 17:21
小熊yu生菜
5楼-- · 2020-09-23 17:29

我相信没有其他方法可以更新表中的每一行。

粗暴的香蕉
6楼-- · 2020-09-23 17:14

您是否使用UPDATE SET尝试过并检查是否存在性能问题?

一周热门 更多>