这是我在sqlite db中的列的快照,其架构中的数据类型定义为 DATETIME 。现在我想应用一些聚合函数,如sum()
来计算此列的总和。
我使用的查询是:
select sum(total_expend_time) from timetable;
但结果返回0.0。
答案 0 :(得分:10)
SQLite没有本机DATETIME
数据类型;值存储为字符串。
您必须先使用built-in date function将这些字符串转换为数秒才能添加它们:
SELECT sum(strftime('%s', total_expend_time) -
strftime('%s', '00:00:00' ))
FROM timetable
如果您希望将此格式化为时间,则必须在之后将其转换回来:
SELECT time(sum(...), 'unixepoch') FROM timetable
答案 1 :(得分:0)
这对我来说很完美:
SELECT time(
sum( strftime('%s', total_expend_time) ),
'unixepoch'
)
FROM timetable
谢谢CL!