更新表列,使每一行都有一个字符串加上递增的数字

bgibtngc  于 2021-06-25  发布在  Mysql
关注(0)|答案(1)|浏览(296)

是否有sql命令来更新表中的列,例如:

UPDATE user_data
SET name='user' + ' ' + n

所以每一行都用一个字符串加上一个递增的数字来更新?

name
------
user 1
user 2
user 3
9gm1akwq

9gm1akwq1#

用两种说法:

SET @n = 0;

UPDATE user_data
SET name = CONCAT('user', ' ', (@n:=@n+1));

您甚至可以将“user”和“”组合成一个字符串,但我将其显示为单独的,以说明concat()接受任意数量的参数。
顺便说一句, + 是microsoft sql server和microsoft access中的字符串连接运算符。不是在标准sql中,也不是在mysql中。

相关问题