- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我们得到了下表mytable
:
+----+------------+------------+
| id | created | expired |
+----+------------+------------+
| 1 | 1496476314 | NULL |
| 6 | 1496477511 | NULL |
| 7 | 1496477518 | NULL |
| 12 | 1496477534 | NULL |
| 13 | 1496477536 | NULL |
| 15 | 1496477541 | NULL |
| 21 | 1496477548 | NULL |
| 22 | 1496477550 | NULL |
| 26 | 1496477565 | NULL |
| 28 | 1496477566 | NULL |
| 29 | 1496477583 | NULL |
+----+------------+------------+
我们想做以下事情:
set expired = created + random(15 - 30 minutes) as unix_timestamp where expired is null;
我目前还不知道该怎么做。如果你能给我一些想法,那将节省我的时间。
我尝试将 created
时间戳转换为 date_time,并向该 date_time 添加所需的 15 - 30 分钟,最后将 new_date_time 转换回 unix_timestamp,但应该有更简单的方法。
最佳答案
如果你想在 14 和 33 之间添加一个随机的分钟数,你可以这样做:
SET expired = DATE_ADD(created, INTERVAL 14 + RAND()*(33-14) MINUTE);
如果你想有秒的粒度,你需要添加SECOND类型的间隔:
SET expired = DATE_ADD(created, INTERVAL 14*60 + RAND()*(33-14)*60 SECOND);
如果您有一个用于过期列的 DATETIME
,这将节省一次日期时间转换,这使得过期记录 (WHERE expired < NOW()) 稍微容易一些。如果您有一个包含 Unix 时间戳的整数,那么 Darshan 的答案绝对是可行的方法,您最好在您的应用中计算 Unix 时间戳,然后将其插入查询:
WHERE expired <= 123456789
在该列上有一个索引将使过期变得非常快。我认为它可能比 datetime 方法更快,但这只是一种感觉,我还没有实际检查过。
关于mysql - 如何在 MySQL 中为时间戳添加随机间隔?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44342233/
给定一个带有多个 date_time 戳的字符串,我想 提取第一个戳及其前面的文本 候选字符串可以有一个或多个时间戳 后续的 date_time 戳记将被 sep="-" 隔开 后续date_time
是否可以合并从相机拍摄的文本和照片?我想在照片上标记日期和时间,但我在 Google 上找不到任何内容。 最佳答案 使用下面的代码来实现你所需要的。 Bitmap src = Bitm
有没有办法通过 Graph API 戳另一个用户?基于this post ,并使用 Graph Explorer ,我发布到“/USERID/pokes”,我已经授予它(Graph API 应用程序和
我有两个向左浮动的元素。一个是 body 的第一个 child ,另一个是容器的第一个 child ,容器是 body 的第二个 child 。 ...
我是一名优秀的程序员,十分优秀!