如何在 SQL 中将 bigint 转换为小时和分钟?
How can I convert bigint to hours and minutes in SQL?
我遇到以下问题:我有一个包含 BIGINT
列的数据库,我正在尝试将其转换为一小时,所以我的数据库看起来像这样
id minutes hours and minutes
------------------------------
1 400 null
2 450 null
3 421 null
4 140 null
我需要将保存为 bigint
的分钟转换为小时和分钟;我怎样才能最好地做到这一点?
我需要这个结果
id minutes hours and minutes
----------------------------
1 400 06:40
2 450 07:30
3 421 null
4 140 null
我是新手,我在谷歌上搜索过,但我找不到我的问题的答案,有人可以帮助我或给我一个 link - 我该怎么做?谢谢
您可以使用算术计算小时和分钟:
select floor(minutes_col / 60) as hours,
minutes_col % 60 as minutes
一些数据库使用 mod()
作为取模函数。
转换为字符串高度依赖于数据库。
SQL有专门用来节省时间的数据类型:time(n) (n可以在0-7之间) Check here for more info about this datatype
您的第三列应该是这种类型。
然后,您可以根据分钟列值计算小时和分钟,如下所示:
小时 = totalminuts/60 分钟 = totalminutes%60。
然后在第三列中保存 'Hour:minutes'。
希望对您有所帮助。
我遇到以下问题:我有一个包含 BIGINT
列的数据库,我正在尝试将其转换为一小时,所以我的数据库看起来像这样
id minutes hours and minutes
------------------------------
1 400 null
2 450 null
3 421 null
4 140 null
我需要将保存为 bigint
的分钟转换为小时和分钟;我怎样才能最好地做到这一点?
我需要这个结果
id minutes hours and minutes
----------------------------
1 400 06:40
2 450 07:30
3 421 null
4 140 null
我是新手,我在谷歌上搜索过,但我找不到我的问题的答案,有人可以帮助我或给我一个 link - 我该怎么做?谢谢
您可以使用算术计算小时和分钟:
select floor(minutes_col / 60) as hours,
minutes_col % 60 as minutes
一些数据库使用 mod()
作为取模函数。
转换为字符串高度依赖于数据库。
SQL有专门用来节省时间的数据类型:time(n) (n可以在0-7之间) Check here for more info about this datatype
您的第三列应该是这种类型。 然后,您可以根据分钟列值计算小时和分钟,如下所示:
小时 = totalminuts/60 分钟 = totalminutes%60。 然后在第三列中保存 'Hour:minutes'。
希望对您有所帮助。