2011-04-07 62 views
0

想知道是否有办法从MySQL表中查询字段作为不同的数据类型。作为不同数据类型的MySQL查询字段

比方说,我已经存储了一个名为duration的字段,它是我想使用SELECT(持续时间)语句查询的int()类型,但是我希望格式化为time()数据类型的结果。

这可能吗?

问候。

+0

我不这么认为。你可以很容易地用你使用的任何编程语言来做到这一点。大多数语言都有一个时间对象,可以将整数转换为时间对象。 – tjameson 2011-04-07 17:48:11

+0

您确实拥有Cast()或Convert()函数,但它们仅用于兼容的可转换类型。对时间不确定。 – 2011-04-07 17:49:21

+0

@tjameson我正在尽力避免在我的脚本XD @Sachin Shanbhag要检查cast()或convert() – romeroqj 2011-04-07 17:53:28

回答

1

如果您具有构成UNIX时间戳的INT,则可以使用FROM_UNIXTIME函数将其转换为日期字符串。生成的字符串然后可以使用TIMESTAMP函数转换为DATETIME值。

例如,您可能写:

SELECT TIMESTAMP(FROM_UNIXTIME(1302202070)); 

或者:

SELECT TIMESTAMP(FROM_UNIXTIME(some_column)) FROM some_table; 
+0

听起来像是最好的选择...我更喜欢自己做,因为那时我可以指定输出格式... – tjameson 2011-04-07 18:00:16

+0

我找到了TIME_TO SEC MySQL函数。 SELECT TIME_TO_SEC(duration);似乎完成这项工作,它输出HHH:MM:SS格式。 – romeroqj 2011-04-07 18:49:03

相关问题