Mic*_*dan 5 mysql iteration loops stored-procedures
我们正在从PostgreSQL迁移和应用到MySQL.
基本上,我想在MySQL中循环一个结果.
SELECT col1 FROM table1; <---(1)从此查询中获取结果.
LOOP THROUGH col1Result
Run Code Online (Sandbox Code Playgroud)
SELECT myCol FROM table2 WHERE thisCol = col1Result <---等于上一个查询的每个结果.
END LOOP;
Run Code Online (Sandbox Code Playgroud)
我也找到了这个参考
http://dev.mysql.com/doc/refman/5.0/en/cursors.html
但是,我坚持这一行.
FETCH cur1 INTO a, b;
Run Code Online (Sandbox Code Playgroud)
那岂不是让每一个结果cur1到变量a和b?我如何确保我目前在变量的第一个索引a?
这是一个关于如何在我的结尾使用结果的例子(写在PostgreSQL中).
FOR my_record IN
SELECT DISTINCT col1
FROM table1
WHERE col2 = param1;
LOOP
SELECT DISTINCT col4
FROM table2
WHERE col3 = my_record.col1;
IF true THEN
RAISE EXCEPTION '%', 'ERROR MESSAGE' || my_record.col1;
END IF
SELECT DISTINCT col5
FROM table3
WHERE col6 = my_record.col1;
IF true THEN
RAISE EXCEPTION '%', ERROR MESSAGE' || my_record.col1;
END IF;
END LOOP;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
12916 次 |
| 最近记录: |