爱飞的笨鸟 2022-01-23 16:50 采纳率: 100%
浏览 14
已结题

sql:最晚一个会议的时间(按当地时间(时区问题)推算,凌晨5:00前的最晚一个的时间,5点后算作新一天)

公司过年统计一些会议的数据,有一个:最晚一个会议的时间(按当地时间推算,凌晨5:00前的最晚一个的时间,5点后算作新一天)

会议表
schedule

img

时区表
schedule_time_zone

img

麻烦的是这个时区怎么转.

查了下 select convert_tz(now(), '+08:00', '+00:00'); 跟我们库里存的格式不一样,硬拼感觉有问题.

最好能把完整sql搞出来.

  • 写回答

1条回答 默认 最新

  • DarkAthena ORACLE应用及数据库设计方案咨询师 2022-01-23 17:15
    关注

    最简单的,你直接把数据里的时间减掉5个小时,再去识别是哪一天不就好了?

    然后你说的日期格式不一样,是因为你数据库里那个叫"UNIX_TIMESTAMP",转换一下就好了

    select UNIX_TIMESTAMP(convert_tz(now(), '+08:00', '+00:00'))*1000
    

    如果是要把UNIX_TIMESTAMP转回成日期时间,用下面这个

    select from_unixtime(1459338786)
    

    注意位数,一般有10位数和13位数两种,你原数据是13位数就先除以1000再用 from_unixtime

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 4月27日
  • 已采纳回答 4月19日
  • 创建了问题 1月23日

悬赏问题

  • ¥15 微信会员卡等级和折扣规则
  • ¥15 微信公众平台自制会员卡可以通过收款码收款码收款进行自动积分吗
  • ¥15 随身WiFi网络灯亮但是没有网络,如何解决?
  • ¥15 gdf格式的脑电数据如何处理matlab
  • ¥20 重新写的代码替换了之后运行hbuliderx就这样了
  • ¥100 监控抖音用户作品更新可以微信公众号提醒
  • ¥15 UE5 如何可以不渲染HDRIBackdrop背景
  • ¥70 2048小游戏毕设项目
  • ¥20 mysql架构,按照姓名分表
  • ¥15 MATLAB实现区间[a,b]上的Gauss-Legendre积分