-2

我必须生成 5 到 30 之间的时间值(分钟)。代码应该可以工作并生成 5-30 分钟,但我得到的是 5-30 秒:

更新 table1 设置 column1 = 5+FLOOR(RAND()*26);

column1 是 TIME 列

有什么建议么?

4

1 回答 1

1

如果您只是存储数秒或数分钟,那么您没有存储“时间”,因此 column1 不应该是时间类型......

如果你想要整分钟(以秒为单位)

update table1 set column1 = (5+FLOOR(RAND()*26)) * 60;

如果你想要部分分钟(以秒为单位)

update table1 set column1 = (5*60)+FLOOR(RAND()*26*60);

如果您只想要整数分钟(5 到 30),那么一旦您将列类型更改为 int,您的原始查询应该没问题

于 2012-05-30T15:34:21.243 回答