如何根据以前的记录将一个值添加到记录的值

时间:2017-12-09 05:48:48

标签: mysql

假设,在有1000条记录的表中,但是有一列(数字类型)没有值,就像 this

然后我想更新表格 this

我希望你给我一些建议,非常感谢!

1 个答案:

答案 0 :(得分:0)

好吧,即使它是一个字符串字段,假设您要插入图片中的数字,您可以使用以下示例作为参考:

DROP TABLE test_table;

CREATE TABLE test_table
    (`col_1` varchar(10), `col_2` varchar(10))
;

INSERT INTO test_table
    (`col_1`, `col_2`)
VALUES
    ('A', null),
    ('B', null),
    ('C', null),
    ('D', null),
    ('E', null)
;

然后查询更新null col_2

SET @new_value := 999;

update test_table set col_2 = @new_value:=@new_value + 1;

select * from test_table;

基本上我用SET @new_value := 999;将新值定义为1减去我的开始(1000 -1 = 999)然后在更新期间我将@new_value设置为等于它自己+ 1然后设置为col_2。更新继续到下一行,然后设置为1000 + 1,依此类推。