2020-09-01 06:38发布
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
您好,
请告诉我select single *和select *最多1个行语句之间的区别。哪个是select语句更好。
致谢
巴巴尼
嗨Bhabani,
SELECT SINGLE * --->选择满足Where条件的First Matcing行。
同时
选择*最多1行--->选择满足给定条件的所有记录,然后应用聚合和顺序,并根据这些记录返回第一条记录。
此致
Sunil
嗨,
这里是区别:
SELECT SINGLE返回给定条件的第一匹配行,如果给定条件有更多匹配行,则它可能不是唯一的。
SELECT ...最多1条ROWS检索所有匹配的记录,并应用聚合和排序并返回第一条记录。
为了检查记录是否存在,与使用SELECT ... UP TO 1 ROWS相比,使用SELECT SINGLE更好,因为它使用的内存少且性能更好。"
根据SAP Performance课程,SELECT UP TO 1 ROWS比SELECT SINGLE更快,因为您没有使用所有的主键字段。
感谢和问候,
Ruthra
" SELECT SINGLE"语句选择它发现的满足" WHERE"子句的数据库中的第一行。如果这导致多个记录,则仅返回第一条记录,因此可能不是唯一的。
主要:从
" SELECT .... UP TO 1 ROWS"语句略有不同。 数据库选择WHERE子句定义的所有相关记录,对它们应用任何聚合,排序或分组功能,然后返回结果集的第一条记录。
主要:检查条目是否存在。
选择单个
您需要提及表的所有关键字段。
不需要END SELECT。
与最多1行相比,性能更高。
最多1行。
如果您没有所有可用的主键字段,则可以使用。
需要END SELECT。
由于所有密钥均未通过,因此可能有其他行满足条件。
带有EndSelect的Select语句是一个循环,一次运行可检索单个Record。 该记录必须存储在工作区中,然后附加到内部表中。
没有EndSelect的Select语句不是循环,它一次检索与条件匹配的整个记录集,必须直接存储在内部表中。
要记住的关于SELECT SINGLE的最重要的事情是
有几件事要记住:
1)它仅检索一行
2)不需要ENDSELECT语句
3)表格的完整键必须包含在
选择声明的条款
Kiran Sure
在论坛上搜索有一千个标题完全相同的线程。
嗨, >
您需要检查此类SQL类型的性能问题
环保 >例子 ->性能示例,
u所有类型的SQL语句之间都有差异,然后阅读文档并单击确定时间以选择最佳语句。
问候,
chandu
奖励(如果有用)
select single是用于读取具有主键的数据库记录的结构。 在没有主键的情况下,它可能最终会进行顺序搜索,而最多选择1行可能会假设没有提供主键,并将尝试查找最合适的索引。
找出答案的最佳方法是通过sql跟踪或运行时分析。
仅在确保所有返回的记录对您感兴趣的字段具有相同的值时,才使用"选择最多1行"。否则,将仅读取与第一个匹配的记录 条件,但可能是第二或第三条记录具有您要查找的值。
系统测试结果表明,单*所需的时间少于最多1行,因为SELECT ENDSELECT UP TO 1 ROWS的COUNT STOP KEY还有一个附加级别。
" SELECT SINGLE"语句在数据库中选择满足" WHERE"子句的第一行。如果这导致多个记录,则仅返回第一条记录,因此可能不是唯一的。
diff-between-select-single--orupto-one-row
select-single-vs-select-upto-onerow
选择-单-和选择-至1之间的差异
奖励积分,如果有用。...
AK
选择单个*
如果该记录导致返回多个记录,则仅返回第一个记录,它将提取数据库中满足where子句的第一行。
选择...最多1行
数据库选择where子句定义的所有相关记录,并应用
对其进行聚合,排序或分组,然后返回结果集的第一条记录。
Manjunath M
最多设置5个标签!
嗨Bhabani,
SELECT SINGLE * --->选择满足Where条件的First Matcing行。
同时
选择*最多1行--->选择满足给定条件的所有记录,然后应用聚合和顺序,并根据这些记录返回第一条记录。
此致
Sunil
嗨,
这里是区别:
SELECT SINGLE返回给定条件的第一匹配行,如果给定条件有更多匹配行,则它可能不是唯一的。
SELECT ...最多1条ROWS检索所有匹配的记录,并应用聚合和排序并返回第一条记录。
为了检查记录是否存在,与使用SELECT ... UP TO 1 ROWS相比,使用SELECT SINGLE更好,因为它使用的内存少且性能更好。"
根据SAP Performance课程,SELECT UP TO 1 ROWS比SELECT SINGLE更快,因为您没有使用所有的主键字段。
感谢和问候,
Ruthra
嗨,
" SELECT SINGLE"语句选择它发现的满足" WHERE"子句的数据库中的第一行。如果这导致多个记录,则仅返回第一条记录,因此可能不是唯一的。
主要:从
读取数据" SELECT .... UP TO 1 ROWS"语句略有不同。 数据库选择WHERE子句定义的所有相关记录,对它们应用任何聚合,排序或分组功能,然后返回结果集的第一条记录。
主要:检查条目是否存在。
选择单个
您需要提及表的所有关键字段。
不需要END SELECT。
与最多1行相比,性能更高。
最多1行。
如果您没有所有可用的主键字段,则可以使用。
需要END SELECT。
由于所有密钥均未通过,因此可能有其他行满足条件。
带有EndSelect的Select语句是一个循环,一次运行可检索单个Record。 该记录必须存储在工作区中,然后附加到内部表中。
没有EndSelect的Select语句不是循环,它一次检索与条件匹配的整个记录集,必须直接存储在内部表中。
要记住的关于SELECT SINGLE的最重要的事情是
有几件事要记住:
1)它仅检索一行
2)不需要ENDSELECT语句
3)表格的完整键必须包含在
中选择声明的条款
致谢
Kiran Sure
在论坛上搜索有一千个标题完全相同的线程。
嗨, >
您需要检查此类SQL类型的性能问题
环保
>例子->性能示例,u所有类型的SQL语句之间都有差异,然后阅读文档并单击确定时间以选择最佳语句。
问候,
chandu
奖励(如果有用)
嗨,
根据SAP Performance课程,SELECT UP TO 1 ROWS比SELECT SINGLE更快,因为您没有使用所有的主键字段。
select single是用于读取具有主键的数据库记录的结构。 在没有主键的情况下,它可能最终会进行顺序搜索,而最多选择1行可能会假设没有提供主键,并将尝试查找最合适的索引。
找出答案的最佳方法是通过sql跟踪或运行时分析。
仅在确保所有返回的记录对您感兴趣的字段具有相同的值时,才使用"选择最多1行"。否则,将仅读取与第一个匹配的记录 条件,但可能是第二或第三条记录具有您要查找的值。
系统测试结果表明,单*所需的时间少于最多1行,因为SELECT ENDSELECT UP TO 1 ROWS的COUNT STOP KEY还有一个附加级别。
" SELECT SINGLE"语句在数据库中选择满足" WHERE"子句的第一行。如果这导致多个记录,则仅返回第一条记录,因此可能不是唯一的。
主要:从
读取数据" SELECT .... UP TO 1 ROWS"语句略有不同。 数据库选择WHERE子句定义的所有相关记录,对它们应用任何聚合,排序或分组功能,然后返回结果集的第一条记录。
奖励积分,如果有用。...
致谢
AK
嗨,
选择单个*
如果该记录导致返回多个记录,则仅返回第一个记录,它将提取数据库中满足where子句的第一行。
选择...最多1行
数据库选择where子句定义的所有相关记录,并应用
对其进行聚合,排序或分组,然后返回结果集的第一条记录。
此致
Manjunath M
一周热门 更多>