sql - 如何创建用于标记夏令时额外时间的唯一值?
问题描述
我需要管理夏令时数据,因此在我的表中重复两次或缺少该特定时间的数据的时间需要使用唯一值进行编码,这将使我了解哪个时间对应于夏令时时间。我正在尝试在 Pentaho Kettle 中执行此操作
解决方案
如果您需要一个序列或时间序列,请以 UTC 为基础
您的要求存在冲突,因为在切换日的夏令时时间没有清晰的顺序,仍然会自动映射到 24 小时制。
如果您使用序列号,您最终会在切换日获得 23 或 25 条记录,这意味着您需要自定义映射回 UTC 时间以保持 3 小时后的工作正常。对于任何类型的时间序列,UTC 都非常重要更方便,更不容易出错。
如果您保持一天 24 小时并放松顺序,您将需要插入类似 2.0 的内容来表示春季丢失的时间,以及插入 2.1 和 2.2 来表示秋季切换。它只是增加了更多的复杂性:
- 虚拟 2.0 记录不能有与之关联的活动(根据定义,它被完全跳过),如果有,它会在您尝试使用它的任何地方中断日期解析。
- 2.1 和 2.2 记录至少可以帮助您查看首先发生的活动,但是您需要在任何地方为这种情况进行自定义编码,根据它们的 UTC 时间戳拆分和合并双小时的记录......注意这里的模式吗?
推荐阅读
- angular - 使用 AuthGuard 的不同角色的多个 /Dashboard 路由
- mysql - java EE Hibernate List many to many configure error
- navigation - Angular 7中基于角色的导航
- php - 获取 Microsoft Graph 的对象值
- javascript - 如何在 vue.js 和 laravel 中显示数组响应?
- opencv - OpenCV 3.4.2 VideoCapture 读取 AVI 改变原始视频亮度
- machine-learning - 高度不平衡数据集中使用的负样本数量的影响(XGBoost)
- c++ - boost::pool::ordered_free() 不能正常工作
- qt - QML 3D 基本示例
- amazon-ec2 - 用于 aws ec2 uri 的 Google API Web 客户端 Oauth 2 重定向 uri