【问题标题】:how to convert time saved as int in mysql如何在mysql中将时间转换为int
【发布时间】:2022-01-18 13:50:26
【问题描述】:

我在表格中有一个时间列,它以 24 小时格式保存为 int。 示例:1900(表示晚上 7:00)或 1000(上午 10:00)或 930(上午 9:30) 我将其转换为时间以便能够与 now() 进行比较的最简单方法是什么?

【问题讨论】:

  • 你当然试过了,对吧。那么你能告诉我们你到目前为止有什么吗
  • 我在考虑倒退,这意味着做一些类似 select substr(replace(time(now()),':',''),1,4);现在将(0 到与我的列类型相同的格式,然后比较这些数字......

标签: mysql time integer


【解决方案1】:
SELECT CAST(`time`*100 AS TIME) FROM table

SELECT TIME_FORMAT(`time`*100, '%h:%i %p') FROM table

https://dbfiddle.uk/?rdbms=mysql_8.0&fiddle=f2f08682a6f8cf8410390b8998f7a800

【讨论】:

  • 这似乎可以完成这项工作,谢谢!!!
【解决方案2】:

像下面这样的查询将帮助您将得到的 int 转换为时间:

SELECT CAST(INSERT(CAST(LPAD(1200,4,0) AS CHAR(50)), 3, 0, ':') as TIME);

【讨论】:

  • 试试930 :)
  • 谢谢举例
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-09-09
  • 2016-08-23
  • 2017-10-05
  • 2019-07-01
  • 1970-01-01
  • 1970-01-01
  • 2021-01-12
相关资源
最近更新 更多