List:General Discussion« Previous MessageNext Message »
From:Bill Dodson Date:August 10 2005 1:50pm
Subject:SELECT vs SET for creating variables
View as plain text  
I am using version 4.0.12-nt on a Windows 2000 machine.

I have noticed some difference in the way SET and SELECT create 
variables.  The following statements do not work the way I would expect.

SELECT @neededStep := 10;
SELECT @startOfCenter := 7;
SELECT @returnData :=
IF(@neededStep <= @startOfCenter,
CONCAT(@neededStep, ' <= ', @startOfCenter),
CONCAT(@neededStep, ' > ', @startOfCenter)
);

In the above example @returnData ends up being '10 <= 7', but when 
@neededStep is less than 10 the expected results are found. (could this 
be because @neededStep is stored as text and not a number?)

In the next example @returnData ends up being '10 > 7', as expected.  
This seems to work for all values of @neededStep I have tested.

SET @neededStep := 10;
SET @startOfCenter := 7;
SELECT @returnData :=
IF(@neededStep <= @startOfCenter,
CONCAT(@neededStep, ' <= ', @startOfCenter),
CONCAT(@neededStep, ' > ', @startOfCenter)
);

It would seem that SET is a better way to create variables from constant 
values, but I would like to understand why.  Does anybody know what is 
happening here?

Thanks for your time!
bill

-- 
Bill Dodson
Parkline, Inc. http://www.parkline.com
phone: 304-586-2113 x149
fax: 304-586-3842
email: bdodson@stripped


Email Disclaimer

The information in any email is confidential and may be legally privileged. It is intended
solely for the addressee. Access to the email message by anyone else is unauthorized. If
you are not the intended recipient, any disclosure, copying, or distribution of the
message, or any action or omission taken by you in reliance on it, is prohibited and may
be unlawful. If you have received an email message in error, please notify the sender
immediately by email, facsimile or telephone and return and/or destroy the original
message.

Thank you.

Thread
SELECT vs SET for creating variablesBill Dodson10 Aug
  • Re: SELECT vs SET for creating variablesMichael Stassen10 Aug
  • Re: SELECT vs SET for creating variablesPeter Brawley10 Aug