gpt4 book ai didi

mysql - 如何循环mysql程序?

转载 作者:太空宇宙 更新时间:2023-11-03 12:08:16 34 4
gpt4 key购买 nike

我有 table_a,其中有以下记录:

+----+---+---+
| a | b | c |
+----+---+---+
| 1 | 1 | 2 |
| 2 | 1 | 2 |
| 3 | 1 | 2 |
| 4 | 1 | 2 |
| 5 | 1 | 2 |
| 6 | 1 | 2 |
| 7 | 1 | 2 |
| 8 | 1 | 2 |
| 9 | 1 | 2 |
| 10 | 1 | 2 |
+----+---+---+

如何添加另一列(d),其中记录数仅为 4,其中值是循环语句的乘积?我正在为这种 sql 使用 mysql 存储过程。

这些是我想要的输出

+----+---+---+---+
| a | b | c | d |
+----+---+---+---+
| 1 | 1 | 2 | 1 |
| 2 | 1 | 2 | 2 |
| 3 | 1 | 2 | 3 |
| 4 | 1 | 2 | 4 |
| 5 | 1 | 2 | |
| 6 | 1 | 2 | |
| 7 | 1 | 2 | |
| 8 | 1 | 2 | |
| 9 | 1 | 2 | |
| 10 | 1 | 2 | |
+----+---+---+---+

最佳答案

您只需执行以下操作即可获得结果:

select a, b, c, (case when a <= 4 then a end) as d
from table t;

您可以添加列并将值设置为:

alter table add column d unsigned;

update table t
set d = a
where d <= a;

我认为没有必要在存储过程中循环。

关于mysql - 如何循环mysql程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25417754/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com