1. 程式人生 > >mysql儲存過程 while 迴圈

mysql儲存過程 while 迴圈

    本人小菜鳥一個,一直在學習著各種技術,沒有多大的突破,希望能夠在在部落格上記錄下以後自己的每一次進步與成長。

每一次面試,都會有人問會不會儲存過程,最開始是mb的,對這快兒完全不懂,但是面試多了,每個面試官都會問一遍,所以就有了想學習的興趣。前面看了一點儲存過程的寫法,發現不同的資料庫管理系統的儲存過程寫法不一樣。

    今天在工作中嘗試在navicat上寫了第一個迴圈處理資料的儲存過程。

BEGIN


DECLARE i INT;/*宣告i*/




SET i = 1;/*設定i的初始值為1*/




WHILE i <= 176 DO
/*呼叫sql語句*/
UPDATE t_b_productgroup
SET fit_areaid =(
SELECT
a.areaCode
FROM
(
SELECT
GROUP_CONCAT(areacode) AS areaCode
FROM
t_b_area
WHERE
FIND_IN_SET(
areaname ,
(
SELECT
fit_areaname
FROM
t_b_productgroup
WHERE
fit_areaid = ''
AND fit_areaname != ''
LIMIT 1
)
)
GROUP BY
num
) a
)
WHERE
fit_areaid = ''
AND fit_areaname != ''
LIMIT 1;
/*i迴圈增長*/


SET i = i + 1;


/*設定while結束*/
END
WHILE;




END