07-02-2007 11:36 AM
What is the exact difference between select single and select up to 1 record
07-02-2007 11:37 AM
Hi
Difference Between Select Single and Select UpTo One Rows
According to SAP Performance course the SELECT UP TO 1 ROWS is faster than SELECT SINGLE because you are not using all the primary key fields.
select single is a construct designed to read database records with primary key. In the absence of the primary key, it might end up doing a sequential search, whereas the select up to 1 rows may assume that there is no primary key supplied and will try to find most suitable index.
The best way to find out is through sql trace or runtime analysis.
Use "select up to 1 rows" only if you are sure that all the records returned will have the same value for the field(s) you are interested in. If not, you will be reading only the first record which matches the criteria, but may be the second or the third record has the value you are looking for.
The System test result showed that the variant Single * takes less time than Up to 1 rows as there is an additional level for COUNT STOP KEY for SELECT ENDSELECT UP TO 1 ROWS.
The 'SELECT SINGLE' statement selects the first row in the database that it finds that fulfils the 'WHERE' clause If this results in multiple records then only the first one will be returned and therefore may not be unique.
Mainly: to read data from
The 'SELECT .... UP TO 1 ROWS' statement is subtly different. The database selects all of the relevant records that are defined by the WHERE clause, applies any aggregate, ordering or grouping functions to them and then returns the first record of the result set.
Mainly: to check if entries exist.
<b>Reward points for useful Answers</b>
Regards
Anji
07-02-2007 11:50 AM
07-02-2007 11:48 AM
What is use of Table Maintenance generator?
What is the difference between SM30, SM31, SE54.
07-02-2007 11:54 AM
hi,
The Table Maintenance Generator is used to create table maintenance program to add, modify or delete records in the database table. This can be accessed using transaction SE54 or in SE11 using the menu Utilities->Table Maintenance Generator
the maintenance view allows a user to easily enter values into a table, e.g. the administrator enters values into a customising table.
SE54 is the developer tool to generate / change the maintenance view, which is a set of function modules and screens.
SM30 is the user / administrator tool to use the maintenance view. It internally calls the generated function modules and screens, but those details are hidden from the user.
One advantage is that if you use the maintenance view to enter values into a customising table and press SAVE, you will automatically get a popup asking for a customising transport.
regards,
omkar.
Message was edited by:
Omkaram Yanamala
07-02-2007 11:51 AM
Hi,
The 'SELECT SINGLE' statement selects the first row in the database that it finds that fulfils the 'WHERE' clause If this results in multiple records then only the first one will be returned and therefore may not be unique.
The 'SELECT .... UP TO 1 ROWS' statement is subtly different. The database selects all of the relevant records that are defined by the WHERE clause or lack of, applies any aggregate, ordering or grouping functions to them and then returns the first record of the resultant result set.
you can check the transaction in tcode se93 and in the table TSTC.
go thru these..
http://www.easymarketplace.de/transactions.php
http://www.sap-img.com/general/find-the-list-of-sap-transaction-codes.htm
Regards,
Omkar.
07-02-2007 12:01 PM
Hi,
The both method also fetch only one record but it has lot of difference,
EXAMPLE1:
***************
SELECT SINGLE * FROM MARA WHERE MATNR = 1400-300.
So in the above example we will get only one record which material number is 1400-300.
EXAMPLE 2:
***************
SELECT * FROM MARA UPTO 1 ROW.
It will fetch first record only.
That is the main difference .
IF USEFULL REWARD