SET is the ANSI standard for variable assignment, SELECT is
not.
SET can only assign one variable at a time, SELECT can make
multiple assignments at once.
If assigning from a query, SET can only assign a scalar
value. If the query returns multiple values/rows then SET
will raise an error. SELECT will assign one of the values
to the variable and hide the fact that multiple values were
returned (so you'd likely never know why something was
going wrong elsewhere - have fun troubleshooting that one)
When assigning from a query if there is no value returned
then SET will assign NULL, where SELECT will not make the
assignment at all (so the variable will not be changed from
it's previous value)
As far as speed differences - there are no direct
differences between SET and SELECT. However SELECT's
ability to make multiple assignments in one shot does give
it a slight speed advantage over SET.
No Answer is Posted For this Question
Be the First to Post Answer
What is correlated subquery?
What is check constraint in db2?
Q3. How will you fetch duplicate values from a DB2 table?
What do you mean by cursor?
What is meant by isolation level?
My DB2 program first read the data from a file and then it look into a table with the data it got from the file.If we did not bind the program , should the file read before SQL execution be success??
What is a composite index and how does it differ from a multiple index?
Describe what a storage group(STOGROUP) is?
What is buffer pool?
What is bind plan?
What is rebind in db2?
What is runstats utility in db2?