MySQL日期与long值转换

本文介绍了如何在MySQL中进行日期与long值之间的转换。包括根据日期获取long值,根据long值获取日期,其中详细讲解了使用默认格式和自定义格式的方法,并提到了在构造Date对象时需要注意的时间单位差异。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

根据日期获取long值

select UNIX_TIMESTAMP('2018-03-01 00:00:00')
  • 运行结果: 1519833600

根据long值获取日期

使用默认格式

select FROM_UNIXTIME(1519833600);
  • 运行结果: 2018-03-01 00:00:00

使用自定义格式

select FROM_UNIXTIME(1519833600, '%Y-%m-%d %H:%i:%s');
  • 运行结果: 2018-03-01 00:00:00

使用long值构造Date

    public static void main(String[] args) {
        Date date = new Date(1519833600000L);
        System.out.println(date);
    }
  • 运行结果
Thu Mar 01 00:00:00 CST 2018
  • 使用sql语句获取的是秒数,而创建Date对象需要的是毫秒数,所以需要乘以1000
/**
  * Allocates a <code>Date</code> object and initializes it to
  * represent the specified number of milliseconds since the
  * standard base time known as "the epoch", namely January 1,
  * 1970, 00:00:00 GMT.
  *
  * @param   date   the milliseconds since January 1, 1970, 00:00:00 GMT.
  * @see     java.lang.System#currentTimeMillis()
  */
  public Date(long date) {
      fastTime = date;
  }

参考文章

FROM_UNIXTIME函数的具体用法—java时间戳格式

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值