I have a more masochistic way to do this without a table
DELIMITER $$
DROP PROCEDURE IF EXISTS `test`.`sp_NumberList` $$
CREATE PROCEDURE `test`.`sp_NumberList` (LastNumber INT)
BEGIN
DECLARE j INT;
DECLARE SQLPiece TEXT;
DECLARE SQLStmt TEXT;
SET j = 0;
SET SQLStmt = 'SELECT 0 N';
WHILE j <= LastNumber DO
SELECT CONCAT(' UNION SELECT ',j) INTO SQLPiece;
SET j = j + 1;
SET SQLStmt = CONCAT(SQLStmt,SQLPiece);
END WHILE;
SET @s = SQLStmt;
PREPARE stmt FROM @s;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;
END $$
DELIMITER ;
The highest you can print out is 3700.
Give it a try, and have fun !!!
-----Original Message-----
From: Paul DuBois [mailto:[EMAIL PROTECTED]
Sent: Thursday, March 06, 2008 11:22 AM
To: puntapari; [email protected]
Subject: Re: function/procedure error!
At 8:05 AM -0800 3/6/08, puntapari wrote:
>Hi!
>
>And returning a list of numbers? It can be and how?
You cannot return a list. You could generate a result
set in a procedure, but it's returned to the client, not
the caller.
That's why I suggested writing the numbers into a table.
Then you can select from the table.
--
Paul DuBois, MySQL Documentation Team
Madison, Wisconsin, USA
MySQL AB, www.mysql.com
--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe: http://lists.mysql.com/[EMAIL PROTECTED]
--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe: http://lists.mysql.com/[EMAIL PROTECTED]