Sqlite舍入时间下降

时间:2017-05-09 05:36:54

标签: sqlite rounding

是否有可能将舍入时间缩短到最近5分钟? 像这样的东西: 选择日期时间('现在') 返回2017-05-09 07:34:26

选择stuffcodesql 返回2017-05-09 05:00:00

2 个答案:

答案 0 :(得分:1)

  1. 获取当前日期时间作为unix时间戳
    strftime('%s', 'now')
  2. 将除法的剩余部分减去300(300秒或5分钟)
    strftime('%s', 'now') % 300
  3. 转换为本地时间格式
    select datetime(strftime('%s', 'now') - strftime('%s', 'now') % 300, 'unixepoch', 'localtime') as [5min];

答案 1 :(得分:0)

  1. 将时间戳转换为若干天;
  2. 乘以288(每天5分钟的间隔数);
  3. 向下舍入到最接近的整数;
  4. 再次除以288;
  5. 转换回字符串:
  6. SELECT datetime(CAST(julianday('now') * 288 AS INTEGER) / 288.0);