请选择 进入手机版 | 继续访问电脑版
 找回密码
 立即注册

QQ登录

只需一步,快速开始

xuanlincom

中级会员

35

主题

91

帖子

592

积分

中级会员

积分
592
xuanlincom
中级会员   /  发表于:2022-4-1 20:16  /   查看:3185  /  回复:10
1金币
由于中西方日期格式和时区不同,因此需要做转换。如,通过某API接口调用http命令获取到的时间格式为西方时间“03/31/2022 10:40PM UTC”,需要在存储时转换为中国时间格式并转换时区,但是由于在存储前文本无法计算,请问如何实现?

请查看相关附件
附件: 您需要 登录 才可以下载或查看,没有帐号?立即注册

最佳答案

查看完整内容

感谢各位大佬的指正,那我这个评论能拿到最佳答案吗?

10 个回复

倒序浏览
最佳答案
最佳答案
walizi活字格认证
注册会员   /  发表于:2022-4-1 20:16:39
来自 7#
感谢各位大佬的指正,那我这个评论能拿到最佳答案吗?
回复 使用道具 举报
VVANVI悬赏达人认证
论坛元老   /  发表于:2022-4-1 20:58:31
2#
本帖最后由 VVANVI 于 2022-4-1 21:05 编辑

以下信息是度娘查到的


sqlite 是弱数据类型, 它不能按你指定的数据类型进行自动数据转换; 你输入的这些日期数据记录下来的实际是字符串, 这些数据的比较是按照字符比较进行的。 如果要按日期进行处理, 请在应用中转换后再存储到sqlite数据库中。


---------------------------------------------------------------分界线

可以考虑存储在SQLserver中  再去转换

以下截图是 ,再SQLserver中转换成日期的示例








本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
walizi活字格认证
注册会员   /  发表于:2022-4-1 22:26:25
3#
本帖最后由 walizi 于 2022-4-1 22:27 编辑


=TEXT(DATEVALUE(MID(A1,7,4)&"-"&LEFT(A1,2)&"-"&MID(A1,4,2))+TIMEVALUE(MID(A1,11,5))+8,"YYYY-MM-DD HH:MM:SS")

将UTC日期逐个取出,利用公式,即可转换保存。

正在集赞,如果能用还期望能给一个最佳答案,不胜感激!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

评分

参与人数 1金币 +5 收起 理由
Lay.Li + 5 赞一个!

查看全部评分

回复 使用道具 举报
Lay.Li悬赏达人认证 活字格认证
超级版主   /  发表于:2022-4-2 12:20:15
4#
感谢各位大佬的支持~
您可以先参考楼上大佬的方式,尝试在在服务端命令中使用excel的left,mid等函数,取出时间和日期,然后使用datevalue,timevalue等函数,转换取出的日期时间字符串为序列数,然后加上8个小时对应的序列数大小,再重新转换为北京时间格式即可
回复 使用道具 举报
xuanlincom
中级会员   /  发表于:2022-4-2 14:58:54
5#
walizi 发表于 2022-4-1 22:26
=TEXT(DATEVALUE(MID(A1,7,4)&"-"&LEFT(A1,2)&"-"&MID(A1,4,2))+TIMEVALUE(MID(A1,11,5))+8,"YYYY-MM-DD  ...

这个思路也是可以的,但需要确保返回数值位数不变才行。如果初始值是“3/31/2022 10:40PM UTC" 就不行了(十位没有用0替代)。然后8个小时不能直接+8,应该是+8/24(按天)才可以
回复 使用道具 举报
Lay.Li悬赏达人认证 活字格认证
超级版主   /  发表于:2022-4-2 16:55:58
6#
您好,这边按照楼上大佬提供的方案测试了一下,少一位其实也是可以识别的,给您做了一个demo,您可以参考参考

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
xuanlincom
中级会员   /  发表于:2022-4-4 15:29:34
8#
walizi 发表于 2022-4-1 20:16
感谢各位大佬的指正,那我这个评论能拿到最佳答案吗?

感谢2位大佬的指点,思路没问题的,处理的时候需要根据实际情况分别截取日期和时间,再进行时间计算和文本转日期的处理就可以解决了
回复 使用道具 举报
xuanlincom
中级会员   /  发表于:2022-4-4 15:32:32
9#
刚刚有发现一个问题,AM PM是12小时制,这个方案中没有考虑将12小时制转换为24小时制
回复 使用道具 举报
xuanlincom
中级会员   /  发表于:2022-4-4 16:45:55
10#
xuanlincom 发表于 2022-4-4 15:32
刚刚有发现一个问题,AM PM是12小时制,这个方案中没有考虑将12小时制转换为24小时制

只是稍微麻烦一下,根据时间文本中是否含有AM/PM判断即可
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部