2020-08-13 16:05发布
点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)你好, 通常可以使用: 从x =... 显示全部
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
你好,
通常可以使用:
从x = y的选项卡中选择单个*。
但是,关于性能,我认为 其他一些更好的命令...
任何想法吗?
tks。
注意,测量结果取决于缓冲和索引。 特别是,像其他聚合SELECT一样,SELECT COUNT(*)会绕过可能不希望的缓冲区! 除此之外,正如Hermann Gahm已经指出的那样,我们的客户使用的数据库之间似乎存在显着差异。
我最喜欢的模式是SELECT SINGLE [...]。
为了"验证"这是否真的是一个好选择,我比较了三种不同情况下的几种策略:
a)大型无缓冲表,其中子句仅指定键的一部分
b)大表,具有单记录缓冲,并且在哪里指定完整键
c)相同的大表,具有单记录缓冲,而子句仅指定键的一部分
我的测量在HANA和MaxDB的7.40系统中运行。 独立于数据库,结果之间的定量关系相似,证实了我的最爱是一个不错的选择。 特别要注意的是,在第二个示例中,SELECT COUNT看起来有多糟糕,否则表缓冲可以节省大量时间!
>>>完全无缓冲表<<<
SELECT * FROM sbook INTO sbook_line WHERE carrid ='LH'。 EXIT。 ENDSELECT。执行500次的持续时间(秒):43,8334260
从最多1个行中选择COUNT(*)其中carrid ='LH'。 500次执行的持续时间(秒):0,7393800
SELECT * FROM sbook INTO sbook_line 最多1个行其中carrid ='LH'。 ENDSELECT。 500次执行的持续时间(以秒为单位):0,7619870
SELECT carrid从Sbook进入carrid 最多1个行其中carrid ='LH'。 ENDSELECT。 500次执行的持续时间(以秒为单位):0,5869470
从sbook到carrid中选择单个carrid WHERE carrid ='LH'。 500次执行的持续时间(秒):0,6001700
>>>具有完整键<<<
SELECT * FROM tadir INTO tadir_line 哪里pgmid ='R3TR' AND object ='PROG' AND obj_name = sy-cprog。退出。 ENDSELECT。 500次执行的持续时间(以秒为单位):0,0103200
从tadir到1行选择COUNT(*) pgmid ='R3TR' AND object ='PROG' AND obj_name = sy-cprog。
500次执行的持续时间(以秒为单位):0,6242380
SELECT *从tadir到tadir_line 最多1个行 pgmid ='R3TR' AND object ='PROG' AND obj_name = sy-cprog。 ENDSELECT。< br> 500次执行的持续时间(以秒为单位):0,0103680
从tadir到pgmid的SELECT pgmid 最多到1行 pgmid ='R3TR' AND object ='PROG' AND obj_name = sy-cprog。 ENDSELECT。< br> 500次执行的持续时间(以秒为单位):0,0103690
从tadir到pgmid中选择单个pgmid 哪里pgmid ='R3TR' AND object ='PROG' AND obj_name = sy-cprog。 500次执行的持续时间以秒为单位:0, 0097770
>>>具有不完整键<<<
SELECT * FROM tadir INTO tadir_line 哪里pgmid ='R3TR' AND object ='PROG'。退出。 ENDSELECT。持续500秒的持续时间:25, 2490160
从tadir到1行之间选择COUNT(*)哪里pgmid ='R3TR' AND object ='PROG'。 500次执行的持续时间(以秒为单位):1,4555210
SELECT *从tadir到tadir_line 最多1个行 pgmid ='R3TR' AND object ='PROG'。 ENDSELECT。持续500秒的持续时间: 1,6207910
SELECT pgmid从tadir到pgmid 最多到1行 pgmid ='R3TR' AND object ='PROG'。 ENDSELECT。持续500秒的持续时间: 1,5180330
从tadir到pgmid中选择单个pgmid 哪里pgmid ='R3TR' AND object ='PROG'。 500次执行的持续时间(以秒为单位):1,2033210
最多设置5个标签!
注意,测量结果取决于缓冲和索引。 特别是,像其他聚合SELECT一样,SELECT COUNT(*)会绕过可能不希望的缓冲区! 除此之外,正如Hermann Gahm已经指出的那样,我们的客户使用的数据库之间似乎存在显着差异。
我最喜欢的模式是SELECT SINGLE [...]。
为了"验证"这是否真的是一个好选择,我比较了三种不同情况下的几种策略:
a)大型无缓冲表,其中子句仅指定键的一部分
b)大表,具有单记录缓冲,并且在哪里指定完整键
c)相同的大表,具有单记录缓冲,而子句仅指定键的一部分
我的测量在HANA和MaxDB的7.40系统中运行。 独立于数据库,结果之间的定量关系相似,证实了我的最爱是一个不错的选择。 特别要注意的是,在第二个示例中,SELECT COUNT看起来有多糟糕,否则表缓冲可以节省大量时间!
>>>完全无缓冲表<<<
的存在检查SELECT * FROM sbook INTO sbook_line
WHERE carrid ='LH'。
EXIT。
ENDSELECT。
执行500次的持续时间(秒):43,8334260
从最多1个行中选择COUNT(*)
其中carrid ='LH'。
500次执行的持续时间(秒):0,7393800
SELECT * FROM sbook INTO sbook_line
最多1个行
其中carrid ='LH'。
ENDSELECT。
500次执行的持续时间(以秒为单位):0,7619870
SELECT carrid从Sbook进入carrid
最多1个行
其中carrid ='LH'。
ENDSELECT。
500次执行的持续时间(以秒为单位):0,5869470
从sbook到carrid中选择单个carrid
WHERE carrid ='LH'。
500次执行的持续时间(秒):0,6001700
>>>具有完整键<<<
SELECT * FROM tadir INTO tadir_line
哪里pgmid ='R3TR'
AND object ='PROG'
AND obj_name = sy-cprog。
退出。
ENDSELECT。
500次执行的持续时间(以秒为单位):0,0103200
从tadir到1行选择COUNT(*)
pgmid ='R3TR'
AND object ='PROG'
AND obj_name = sy-cprog。
500次执行的持续时间(以秒为单位):0,6242380
SELECT *从tadir到tadir_line
最多1个行
pgmid ='R3TR'
AND object ='PROG'
AND obj_name = sy-cprog。
ENDSELECT。< br> 500次执行的持续时间(以秒为单位):0,0103680
从tadir到pgmid的SELECT pgmid
最多到1行
pgmid ='R3TR'
AND object ='PROG'
AND obj_name = sy-cprog。
ENDSELECT。< br> 500次执行的持续时间(以秒为单位):0,0103690
从tadir到pgmid中选择单个pgmid
哪里pgmid ='R3TR'
AND object ='PROG'
AND obj_name = sy-cprog。
500次执行的持续时间以秒为单位:0, 0097770
>>>具有不完整键<<<
SELECT * FROM tadir INTO tadir_line
哪里pgmid ='R3TR'
AND object ='PROG'。
退出。
ENDSELECT。
持续500秒的持续时间:25, 2490160
从tadir到1行之间选择COUNT(*)
哪里pgmid ='R3TR'
AND object ='PROG'。
500次执行的持续时间(以秒为单位):1,4555210
SELECT *从tadir到tadir_line
最多1个行
pgmid ='R3TR'
AND object ='PROG'。
ENDSELECT。
持续500秒的持续时间: 1,6207910
SELECT pgmid从tadir到pgmid
最多到1行
pgmid ='R3TR'
AND object ='PROG'。
ENDSELECT。
持续500秒的持续时间: 1,5180330
从tadir到pgmid中选择单个pgmid
哪里pgmid ='R3TR'
AND object ='PROG'。
500次执行的持续时间(以秒为单位):1,2033210
一周热门 更多>