【问题标题】:MySQL Loop Variable in a Query查询中的 MySQL 循环变量
【发布时间】:2014-07-01 11:15:17
【问题描述】:

我想在我的 select 语句的结果中使用循环索引“i”,以便将其插入到另一个表中。是这样的:

set i=0;
while i<25 do

    insert into a (x,y,z)
    select a,b,i
    from table1;

    set i= i+1;
end while;

有什么办法呢?

【问题讨论】:

  • 要插入 table1 的所有行吗?有什么条件吗?也许你可以发布一个真实的样本。

标签: mysql sql loops


【解决方案1】:

完成:)

我刚刚创建了变量 i 作为@i,它已经全部解决了。

像这样:

set @i=0;
while @i<25 do

    insert into a (x,y,z)
    select a,b,@i
    from table1;

    set @i= @i+1;
end while;

谢谢 :)

【讨论】:

  • 仅供参考,这将非常慢。您应该使用基于集合的方法。
  • 我可以使用任何样本吗?
  • 是的,create a numbers table 然后加入它。
【解决方案2】:

作为游标单独打开表格,将字段放入变量中,然后使用这些变量和 i 将数据插入到带有 a 的表格中

insert into a (x,y,z) values (var1, var2, i).

您所写的内容会将多行放入一个表 a 中,每个值为 i。

【讨论】:

  • 您能再解释一下吗?我是 mysql 新手,不明白这个答案...
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-10-27
  • 1970-01-01
  • 1970-01-01
  • 2013-03-11
  • 1970-01-01
  • 2015-02-15
相关资源
最近更新 更多