8

COLUMN

This is the snapshot of my column in sqlite db and its datatype in schema is defined has DATETIME. Now I want to apply some aggregation function like sum() to calculate the total of this column.

the query that I used is:

select sum(total_expend_time) from timetable; but it returns 0.0 as result.

4

2 回答 2

13

SQLite has no native DATETIME data type; the values are stored as strings.

You have to use a built-in date function to convert from these strings to a number of seconds before you can add them:

SELECT sum(strftime('%s', total_expend_time) -
           strftime('%s', '00:00:00'       ))
FROM timetable

If you want to have this formatted as a time, you have to convert it back afterwards:

SELECT time(sum(...), 'unixepoch') FROM timetable
于 2013-01-03T09:17:50.150 回答
0

This works perfect for me:

SELECT time(
           sum( strftime('%s', total_expend_time) ),
           'unixepoch'
           )
FROM timetable

thank you CL!

于 2021-02-03T02:17:13.380 回答