回答

收藏

如何在SQLite的dateTime中添加时间?

技术问答 技术问答 193 人阅读 | 0 人回复 | 2023-09-14

我有一张桌子,桌子上有个日期 creationDate 。像这样存储时间戳
% D" T  W9 K# I4 ]  Y; u0 w  X2013-12-23 10:07:42
  B- k6 t# v- I' Z/ D2 O' j: k+ F2013-12-23 10:14:11; w) z0 P' {9 i( @; B9 @4 m$ ^
实际上,我正在使用mysql2sqlite.sh脚本将数据库从mysql转换为sqlite。并且在转换数据库时,它从creationDate列中减少了5:30的时间。这可能是$ u* I4 E  S+ D1 l
格林尼治标准时间的 问题。  
6 t$ g- J& g  h  F0 m2 p/ b* _因此,现在我想更新时间戳,并向creationDate列中的每个条目添加5小时30分钟。2 f$ j; F! _- }* {: O' X
我搜索了很多,但没有找到解决方案。那么我该如何在sqlite中做到呢?
/ E* P& D5 q2 D$ V6 m, v1 ?                7 l4 ~  E) y0 ?8 K
解决方案:- N% H. Q( g9 b8 i- c! O
               
2 v' X7 M/ i4 Y. H2 ]. A# W9 W" V+ w+ u$ l& D6 l: c% m
, T4 U- U' V2 L. d6 g4 e
                您可以将sqlite日期函数用于简单的数学运算,如下所示:
6 l0 J* {0 b& XUPDATE tablename SET creationDate=DATETIME(creationDate, '+330 minutes');* ]7 q4 @* v8 o
虽然通常在显示时将数据库数据保留为UTC并格式化为本地时区更为合理。
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则