Thread: Fifo?
View Single Post
  #9 (permalink)  
Old 07-03-09, 15:12
fuajuar fuajuar is offline
Registered User
 
Join Date: Dec 2008
Posts: 3
Thanks for your comments.

I got this SP from my friend, there is a new field that is number.

Code:
BEGIN

    SET @ctt = 0;
    SET @amount = 0;
    SET @orders = orders;
    SET @number = 0;
    SET @idxx = idx;

   WHILE @orders >  0 DO
        SET @query=  CONCAT('SELECT `amount_id`,`counter` FROM mytable WHERE `id` = ? ORDER BY DATE ASC LIMIT ?,1 INTO @amount,@number');
        PREPARE stmt1 FROM @query;
        EXECUTE stmt1 USING @idxx, @ctt;
        DEALLOCATE PREPARE stmt1;

        SET @temp = @orders - @amount;

        IF (@temp >= 0) THEN
                     SET @itung = 0;
                     SET @orders = @orders - @amount;
        ELSE
                     SET @itung = @amount - @orders;
                     SET @orders = 0;
        END IF;

                   SET @query=  'UPDATE  mytable SET `amount_id` = ? WHERE `counter` = ?';
                   PREPARE stmt1 FROM @query;
                   EXECUTE stmt1 USING @itung, @number;
                   DEALLOCATE PREPARE stmt1;

                  SET @ctt = @ctt + 1;
   END WHILE;

END


parameters : orders INTEGER,idx INTEGER
What do you think?
Reply With Quote