SurrealDB:如何为datetime类型值添加天、周、月等时长?
在SurrealDB中为datetime值添加时长(周/天/小时等)
在SurrealDB里,你可以直接使用时间单位后缀和datetime值做加法运算,来实现时长的累加。
解决「加2周」的需求
直接给time::now()加上带单位的数值即可,写法如下:
-- 当前时间加两周:2023-07-21T21:48:57.676702494Z time::now() + 2w
支持的常用时间单位
SurrealDB支持以下时间单位后缀,覆盖不同粒度的时长需求:
w:周(week)d:天(day)h:小时(hour)m:分钟(minute)s:秒(second)ms:毫秒(millisecond)µs:微秒(microsecond)ns:纳秒(nanosecond)
不同单位的使用示例
-- 当前时间加3天 time::now() + 3d -- 当前时间加12小时 time::now() + 12h -- 当前时间加45分钟 time::now() + 45m -- 组合多个单位:加2天6小时30分钟 time::now() + 2d6h30m
扩展使用场景
这种运算逻辑不仅适用于time::now(),任何datetime类型的字段或值都可以套用。比如你有一个存储创建时间的字段created_at,可以这样计算:
-- 创建时间加1周 created_at + 1w
内容的提问来源于stack exchange,提问作者eminfedar
相关产品推荐
相关产品推荐

