MySQL समकक्ष कुछ इस तरह होगा:
BEGIN
DECLARE CurrentFirstName VARCHAR(300);
DECLARE CurrentAge INT;
DECLARE done INT DEFAULT FALSE;
DECLARE CursorName CURSOR FOR
SELECT FirstName, Age FROM Customers;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE;
OPEN CursorName;
myloop: LOOP
FETCH CursorName INTO CurrentFirstName, CurrentAge;
IF done THEN
LEAVE myloop;
END IF;
IF CurrentAge > 60 THEN
insert into ElderCustomers values (CurrentFirstName,CurrentAge);
END IF;
END LOOP;
CLOSE CursorName;
END;
बड़ा अंतर लूप में है, जब लाने के लिए कोई और पंक्तियाँ न हों, और फ़्लैग सेट होने पर लूप से बाहर निकलने पर फ़्लैग सेट करने के लिए CONTINUE HANDLER का उपयोग करें। (यह बदसूरत लग रहा है, लेकिन MySQL में ऐसा ही किया गया है।)
यह उदाहरण प्रश्न पूछता है कि यह क्यों नहीं लिखा गया है (अधिक कुशलता से, SQL सर्वर और MySQL दोनों में):
INSERT INTO ElderCustomers (FirstName, Age)
SELECT FirstName, Age
FROM Customers
WHERE Age > 60