sql - SQL Server:在数据库中使用不同时区保存日期时间的最佳实践
问题描述
我想将 DateTime 与 TimeZone 相关联。
我有一个订单,对于每个订单,跟踪时区都是不同的,并且希望将其转换为 UTC 时区以及本地时区。
因此,每个订单的原始时间总是不同的,并且希望使用不同的时区保存 DateTime。
处理这种情况的首选方法是什么?
解决方案
我建议将您的日期时间保存为 UTC,如果您想将 UTC 时间转换为可以AT TIME ZONE
在您的选择语句/视图或函数中使用的特定时区时间。
例子:
SELECT GetUtcDate() AT TIME ZONE 'central european standard time'
如果您想保存时区,我建议您将其保存在“用户”表中。这样用户可以修改它,您可以在查询或客户端中使用它来显示正确时区的时间。
推荐阅读
- javascript - 为什么 toFixed 不是函数
- php - 上传的文件未保存在目录中(PHP AJAX)“严重需要”
- java - 二叉树中的节点到根路径
- r - 在 R Shiny 中,如何翻转函数以使其从左右而不是上下读取矩阵?
- reactjs - 如何在 MUI v5 中旋转组件?
- r - 循环遍历 r 中的行数据框并检查 if else 函数语句
- group-by - 列数据汇总并存储在单独的列中
- ruby-on-rails - 【Rails】acts_as_paranoid 环境,我想物理删除使用关系依赖的记录::destroy
- html - 有什么方法可以在 AdminLTE 侧边栏中添加第三级菜单项?
- angular - 未找到模块:错误:无法解析“@ng-plus/signature-pad”