Rag*_*geZ 115
如果你使用MySQL,你可以这样做:
SELECT '2008-12-31 23:59:59' + INTERVAL 30 MINUTE;
Run Code Online (Sandbox Code Playgroud)
对于纯PHP解决方案,请使用strtotime
strtotime('+ 30 minute',$yourdate);
Run Code Online (Sandbox Code Playgroud)
MySQL有一个函数要求ADDTIME一起添加两次 - 所以你可以在MySQL中完成所有工作(前提是你使用的是= = MySQL 4.1.3).
像(未经测试)的东西:
SELECT * FROM my_table WHERE ADDTIME(endTime + '0:30:00') < CONVERT_TZ(NOW(), @@global.time_zone, 'GMT')
Run Code Online (Sandbox Code Playgroud)
Dominc有正确的想法,但把计算放在表达式的另一边.
SELECT * FROM my_table WHERE endTime < DATE_SUB(CONVERT_TZ(NOW(), @@global.time_zone, 'GMT'), INTERVAL 30 MINUTE)
Run Code Online (Sandbox Code Playgroud)
这样做的好处是,您只需要进行30分钟的计算,而不是每行进行30分钟的计算.这也意味着MySQL可以使用该列的索引.这两个都给你一个加速.
小智 5
使用 DATE_ADD 函数
DATE_ADD(datecolumn, INTERVAL 30 MINUTE);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
104101 次 |
| 最近记录: |