德国时间冬令时和夏令时
天下奇闻 2021-10-17 19:35www.worldometers.cn最新国际新闻
最近在处理时间上碰到一个需求,事实表里的时间是德国时间,需要换算成北京时间,换算的逻辑是夏时制时,北京时间与德国时间相差6个小时,北京时间12点,德国比中国晚6个小时,德国时间是凌晨6点;冬时制时,北京时间与德国时间相差7个小时,北京时间12点,德国比中国晚7个小时,德国时间凌晨5点。
德国每年3月的最后一个星期日到10月的最后一个星期日实行夏时制,其余时间为冬时制。
明确逻辑后,问题就落在了对日期表的日期区分出是夏时制还是冬时制,即是夏令时还是冬令时。冬令时和夏令时的区分就是区分出每年3月的最后一个星期日和10月的最后一个星期日,同一年中在这两个时间之间的就是夏令时,之外的就是冬令时。
可以在日期表里新建两列,一列是每年3月的最后一个星期日,一列是每年10月的最后一个星期日,再建一列判断是冬令时还是夏令时。
日期表里要包含星期几的列来说明那一天是周几,还要有年和月两列:
每年3月最后一个星期日的公式里首先新建一个var变量a表示当前行的年份,然后maxx公式在筛选出的每年3月周日的表里返回3月的最后一个星期日,返回的值既要是3月最后一个星期日还要和所在行的日期是同一年份,同样的逻辑算出每年10月最后一个星期日的计算列。
然后判断冬夏令时:
判断出冬夏令时后,时间换算就迎刃而解了~~
步骤分开写方便理解,但是分三列计算会影响性能,所以把这三个计算列合在一起写:
本场景处理的关键是确定3月最后一个星期日和10月最后一个星期日,类似的在处理某月最后一个周几的时候使用var变量先确定月份所在的是哪一年,然后在筛选的某月周几的表里返回最后一个周几的日期,得出时间节点后就可以做其他的判断了(如冬夏令时)。
今日国际新闻
- 刘佳《南京爱情》热拍 拼实力讲情怀
- 李晨白玩范冰冰三年,王思聪怒怼其出名靠张开
- 廖化在蜀中的历史角色解析
- 刘德华躲避媒体 喻可欣赴重庆上山吸灵气
- 李光洙《Running Man》挑战李敏镐夺得“具光表”称
- 料“汪小菲离异有一女”网友道歉我搞错了
- 柳岩禁播广告遭胡须男嘬脸挑逗问还要吗
- 吕佳容《华胥引》放大招 “容氏贤内助”专注棒
- 李胜基将与miss A秀智一起挑战首部历史剧《旧家
- 旅游官员郑亚平演张家界版《江南style》 变稻草
- 李准基素颜自拍 “证件照”也同样帅气
- 林芮西搞怪写真光 再现匆匆那年清纯时光
- 离异少妇骗大学生 大学生还没出社会就被骗了
- 李宇春演唱会火爆开票 一个半小时内各路售票几
- 马苏最新民国范儿大片 梦幻灵动仙气十足
- 柳岩蕾丝透视裙肤白唇红抢眼 与周笔畅娄艺潇亮