动态迭代 MySQL 表中的列名
本题探讨了一种使用存储的存储在 MySQL 表中迭代列名的方法。用本机 SQL 编写的过程。目标是获取列名列表,然后根据每个列名作为变量执行存储过程。
检索列名
检索列名从 MySQL 表中,使用 SHOW COLUMNS FROM
循环列名称
一旦检索到列名称,就可以存储它们使用游标循环。游标是一个迭代器,可以逐行遍历结果集。下面是一个示例:
DECLARE col_names CURSOR FOR SELECT column_name FROM INFORMATION_SCHEMA.COLUMNS WHERE table_name = 'tbl_name' ORDER BY ordinal_position;
此游标从指定表中选择列名,按位置对它们进行排序,并将游标命名为 col_names。
执行循环
要迭代列名并执行存储过程,请使用以下命令循环:
SET i = 1; the_loop: LOOP IF i > num_rows THEN CLOSE col_names; LEAVE the_loop; END IF; FETCH col_names INTO col_name; //do whatever else you need to do with the col name SET i = i + 1; END LOOP the_loop;
此循环使用 FETCH 语句将下一个列名称检索到变量 col_name 中。在循环内部,可以根据列名称执行任何必要的操作。
以上是如何使用存储过程动态迭代 MySQL 列名?的详细内容。更多信息请关注PHP中文网其他相关文章!