我想知道如何遍历数据库中的每条记录,并使用计数器更新它们。
例如,我有大量的电子邮件字段。我想用'hello+1@gmail.com','hello+2@gmail.com','hello+3@gmail.com','hello+4@gmail.com‘...
我试着在我的Rails控制台中不使用SQL来做这件事,但这会花费太多的时间。对于如何使用SQL实现这一点,有什么建议吗?
发布于 2015-02-26 11:01:19
如果您使用的是SQL server:
select <stuff>
,row_number() over (order by <something>) as row_number
from <things>
where <something>就能达到目的。如果没有,让我们知道你正在使用什么,我们可以从那里开始!您是否希望将“+Row_number”放在@之前?如果是这样,那么将“@”替换为“+4@”应该是一个相当简单的问题,以此类推。
发布于 2015-02-26 11:58:22
在MySQL中,您可以使用变量:
update table t
set email = concat('hello+', @rn := coalesce(@rn, 0) + 1, '@gmail.com');如果你有一个特定的顺序,你可以添加一个order by子句。
https://stackoverflow.com/questions/28733442
复制相似问题