本人小菜鸟一个,一直在学习着各种技术,没有多大的突破,希望能够在在博客上记录下以后自己的每一次进步与成长。
每一次面试,都会有人问会不会存储过程,最开始是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