我的疑问是......
SELECT a.ID, a.time, a.quote, a.quantity, a.media, a.print, a.pack
FROM quotes a
它返回我的日期......
如何将结果显示为March 2, 2012
或05/04/2012
或有意义的内容?
UPDATE - FROM_UNIXTIME下面的答案将所有记录列为我运行查询时的时间 - 我需要记录最初创建的时间 - 而不是查询时间。
还有其他想法吗?
答案 0 :(得分:4)
您可以使用FROM_UNIXTIME执行此操作:
SELECT a.ID, FROM_UNIXTIME(a.time, '%M %e, %Y'),
a.quote, a.quantity, a.media, a.print, a.pack
FROM quotes a
您可以使用指定与DATE_FORMAT一起使用的格式,以您想要的任何方式格式化日期。
答案 1 :(得分:2)
尝试使用此功能:FROM_UNIXTIME
在你的情况下,它将是这样的(对于第一个例子):
SELECT a.ID, FROM_UNIXTIME(a.`time`, '%M %e, %Y'),
a.quote, a.quantity, a.media, a.print, a.pack
FROM quotes a
您可能想要做的是给结果一个别名:
SELECT a.ID, FROM_UNIXTIME(a.`time`, '%M %e, %Y') as formatted_time,
a.quote, a.quantity, a.media, a.print, a.pack
FROM quotes a
然后您将访问格式化结果formatted_time
而非time
...
注意:请注意时间列名称是反引号
a.`time`
后退滴答的Lac导致查询返回当前时间而不是时间列的值
答案 2 :(得分:2)
SELECT DATE_FORMAT(FROM_UNIXTIME(a.`time`), '%M %e, %Y') AS `time`...
有关DATE_FORMAT可能性的完整列表,请参阅MySQL Manual。
答案 3 :(得分:0)
您似乎需要使用FROM_UNIXTIME
功能。来自文档:
返回unix_timestamp参数的表示形式,作为值
'YYYY-MM-DD HH:MM:SS'
或YYYYMMDDHHMMSS.uuuuuu
格式,具体取决于 函数是在字符串还是数字上下文中使用。
答案 4 :(得分:0)
SELECT a.ID, FROM_UNIXTIME(a.time), a.quote, a.quantity, a.media, a.print, a.pack
FROM quotes a
答案 5 :(得分:0)
您可以使用DATE_FORMAT函数,
SELECT a.ID, DATE_FORMAT(a.time, '%M %D %Y'), a.quote, a.quantity, a.media,a.print,a.pack
FROM quotes a