what is the difference between select single *
and slect upto 1 rows...
Answers were Sorted based on User's Feedback
Answer / anita
select up to one rows is much quicker that select single
as your not really using the all the key fields. Select
single is a construct that is designed primarily to read
database records with a primary key. If there is no primary
key available then at the most it might end up doing a
perfunctory sequential search. However in the case of
select up to one rows it will assume that there is no
primary key and will automatically search for the most
appropriate index.
In select * single only a single record is fetched that is
whichever one will come first in the data base query. But
in the case of select upto one rows all the records will be
fetched and stored in a buffer which pertain to the where
condition in the Data base theory.
Is This Answer Correct ? | 9 Yes | 5 No |
Answer / gohila.r
Select Single * will pickup only one matching record from
the database into the buffer, and returns the same to the
internal table.
Select upto 1 rows will pickup all the records matching the
condition into the buffer, but return the top record to the
internal table.
For this reason, performance wise select upto 1 row is
better than select upto 1 row.
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.
Is This Answer Correct ? | 0 Yes | 2 No |
Answer / bandivenkateswarlu
the select single is used retrive the single record from the
database. where as in the select single up to one row is
used retrive one row from the databse.
Is This Answer Correct ? | 0 Yes | 22 No |
When we copy any Driver Program from Nace............when we copy into zprog,when we activate how it was linking to that particular std layout............what happening to the previous driver prog?
Which one of the following statements would occur in the PBO of a dialog program using table control? a) module user_command. b) set screen '0100'. c) loop at itab. d) loop at itab with control itab_tc.
what is difference between rfc and bapi
How do you Export a session ?
Explain what are interactive reports?
how to see the table output?
How does the interection between the dynpro and the abap/4 modules takes place?
how much exact time will take binary search option using along with read statement?
what is diffrence between table control and alv grid in dialog programming in abap.
how to invoke smart forms from a program ?
how to trasfert script from one server to another server or one clint to another clint
How is conversion of data types done between abap/4 & db layer?