Mysql - 如何存储 10位、13位的 unix 时间戳?

背景

  • 前面有讲过存日期时间可以用  datetime、timestamp 类型:https://www.cnblogs.com/poloyy/p/15546735.html
  • 格式是: YYYY-MM-DD hh:mm:ss 
  • 但假设我不想存具体的日期时间,想存一个 unix 时间戳呢?

 

啥是 unix 时间戳

  • 可以去这个网站看看就知道了,http://tool.chinaz.com/Tools/unixtime.aspx
  • 自 1970 年 1 月 1 日协调世界时 (UTC) 成立以来经过的秒数
  • 其实就是常见的 10 位秒级时间戳(1636727443)和 13 位毫秒级时间戳(1636727443123)

 

灵魂拷问

  • 有很多接口响应可能会返回这样一个时间戳,让前端自己去转换
  • 那对于在 Mysql 中,如何存储这样的时间戳呢?

 

如何存储 10 位秒级时间戳

  • 直接用 int 类型存
  • 使用普通的 int 类型来存储 Unix 时间是最简单的方法
  • 使用 int,可以确定存储的数字可以快速可靠地插入表中

 

如何存储 13 位毫秒级时间戳

不可以使用 int 类型存,需要用 varchar 或者 bigint

 

为什么不能用 int 存

  • 因为 13 位时间戳超出了 int 的存储范围
  • 这就要聊一聊 Mysql 支持的整数类型的存储字节数和范围了

https://www.cnblogs.com/poloyy/p/15546827.html

 

posted @   小菠萝测试笔记  阅读(2073)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
历史上的今天:
2020-11-13 Docker 实战(3)- 搭建 Gitlab 容器并上传本地项目代码
2020-11-13 Docker - 解决 gitlab 容器上的项目进行 clone 时,IP 地址显示一串数字而不是正常 IP 地址的问题
2020-11-13 Docker - 解决同步容器与主机时间报错:Error response from daemon: Error processing tar file(exit status 1): invalid symlink "/usr/share/zoneinfo/UTC" -> "../usr/share/zoneinfo/Asia/Shanghai"
2020-11-13 Docker - 解决容器内获取的时间和主机的时间不一样的问题
点击右上角即可分享
微信分享提示