如何将值从Sqlite DB传递给julianday()
我需要计算以文本表示的两个日期之间的差异如何将值从Sqlite DB传递给julianday(),sql,sqlite,date,datetime,select,Sql,Sqlite,Date,Datetime,Select,我需要计算以文本表示的两个日期之间的差异julianday()可以执行此操作,但它接受一个文本: select(julianday('2015-01-01 12:00:00') - julianday('2015-01-01 13:00:00')) 但如果我有一张桌子: CREATE TABLE "time_u" ( "time_in" TEXT, "time_out" TEXT ); INSERT INTO
julianday()
可以执行此操作,但它接受一个文本:
select(julianday('2015-01-01 12:00:00') - julianday('2015-01-01 13:00:00'))
但如果我有一张桌子:
CREATE TABLE "time_u" (
"time_in" TEXT,
"time_out" TEXT
);
INSERT INTO time_u (time_in, time_out)
VALUES ('2007-01-01 10:00:50', '2007-01-01 11:00:00')
我怎么能做这样的事
julianday(time_u.time_out-time_u.time_in)
换句话说,直接从数据库中获取值,并将其作为日期减去。您可以将每个日期改为朱利安日,然后减去:
select
t.*,
julianday(time_out) -julianday(time_in) day_diff
from time_u t
如果您想要更准确的信息,可以将datetimes转换为epoch timestamp。假设您希望以分钟为单位计算差异,然后:
select
t.*,
(strftime('%s', time_out) - strftime('%s', time_in)) / 60.0 day_diff
from time_u t
您已经问了同样的问题:它已作为副本关闭。原始问题的链接包含所提供的答案以及您需要的所有信息。结果:没有此类列:time\u.time_in@ibse:这是因为表别名。修正了。我如何将此转换为分钟?我在哪里添加*24*60???@ibse:查看我的更新答案。